1. 程式人生 > >怎麽實現背景透明而文字不被透明

怎麽實現背景透明而文字不被透明

strong ros margin bsp radi type 語句 align posit

前言:

   我們知道使用opacity可以實現透明效果,兼容語句是:filter:alpha(opacity=0~100);但是它具有父子繼承特性,怎麽實現我們想要的效果呢?

方法一:運用CSS3的屬性rgba(R,G,B,A),IE8以上的版本可以達到我們的要求:

R:紅色值。正整數 | 百分數

G:綠色值。正整數 | 百分數

B:藍色值。正整數 | 百分數

A:Alpha透明度。取值0~1之間。

那麽IE8及以下怎麽辦呢?再加一句:

filter:progid:DXImageTransform.Microsoft.gradient(startcolorstr=#7F000000,endcolorstr=#7F000000);
#7F000000的前兩位數字控制透明度,取值16進制從00 -> FF(越小越透明),00表示完全透明,FF就是全不透明,後面六位是色值。
方法二:用opacity,但是讓文字與div之間不再是父子關系,通過定位或margin值來實現我們想要的效果,這方法可以實現當我們不是純色背景(圖片)圖片透明
的需求。
<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style>
        *
{margin:0;padding:0;} .box{position:relative;margin:0 auto;width:300px;} .box1{ width:300px; height:200px; background: green; opacity:.5; } p{ width:300px; text-align:center; color:red
; font:bold 20px/20px "微軟雅黑"; position:absolute;top:50%;} </style> </head> <body> <div class="box"> <div class="box1"></div> <p>字體不被透明</p> </div> </body> </html>

這是之前遇到的坑,希望對你有所幫助,有問題大家可以一起討論...........

 

怎麽實現背景透明而文字不被透明