通過RGBA設定透明度,只有最新的瀏覽器支援,支援IE9+,可通過RGBA的alpha通道的方式設定。
(推薦教學:)
<body> <div style="background-color:rgba(0,255,0,0.2);"> 顯示文字 </div> </body>
前三個值是rgb的顏色值,最後一個透明度的值,取值爲0~1,值越小越透明。
相容所有瀏覽器寫法:
background-color:rgba(0,0,0,0.25); filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr=#40000000,endColorstr=#40000000);
注意:startColorStr 和 endColorStr 的值,前兩位是十六進制的透明度,後面六位是十六進制的顏色。
其格式爲 #AARRGGBB 。 AA 、 RR 、 GG 、 BB 爲十六進制正整數。取值範圍爲 00 - FF 。
RR 指定紅色值, GG 指定綠色值, BB 指定藍色值,參閱 #RRGGBB 顏色單位。 AA 指定透明度。 00 是完全透明。 FF 是完全不透明。超出取值範圍的值將被恢復爲預設值。
(視訊教學推薦:)
2位透明度的換算方法:x=alpha*255 ,將計算的結果 x 轉換成十六進制即可。
js換算16進位制方法: x.toString(16)
例如:上面的 0.25 透明度,換算爲IE的AA透明度: var a = 0.25 * 255 = 63.75 ~= 64; a.toString(16) = 40
舉例:
<!DOCTYPE html> <head> <meta charset="utf-8"/> <style type="text/css"> body{margin:0;padding:0;} .div_content{ background: url("1.gif") no-repeat; /*給input框新增背景圖片,以凸顯其透明效果。*/ width: 200px; height: 200px; } .div_content>input{ outline: none; border: none; background-color: transparent; /*必須將背景色設爲透明,否則無效。(除非對於要設定的元素本身已經是透明的,如:span元素等)*/ background-color: rgba(0,0,0,0.25); filter: progid:DXImageTransform.Microsoft.Gradient(startColorstr=#40000000,endColorstr=#40000000); } </style> </head> <body> <div class="div_content"> <input type="text" size="20"/> </div> </body> </html>
以上就是css如何設定透明度不會影響子元素的詳細內容,更多請關注php中文網其它相關文章!