實現(xiàn)背景透明有多種方式,本文為大家介紹以下兩種方式:
(相關(guān)教程推薦:CSS教程)
css3的opacity:x,x 的取值從 0 到 1,如opacity: 0.8
css3的rgba(red, green, blue, alpha),alpha的取值從 0 到 1,如rgba(255,255,255,0.8)
一、css3的opacity
兼容性:IE6、7、8不支持,IE9及以上版本和標準瀏覽器都支持
使用說明:設(shè)置opacity元素的所有后代元素會隨著一起具有透明性,一般用于調(diào)整圖片或者模塊的整體不透明度
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>背景透明度</title> <style> .demo{ padding: 25px; background-color:#000000; filter:alpha(opacity:50); opacity:0.5; -moz-opacity:0.5;-khtml-opacity: 0.5; } .demo p{ color: #FFFFFF; } </style> </head> <body> <div class="demo"> <p>背景透明,文字也透明</p> </div> </body> </html>
使用opacity后整個模塊都透明了,展現(xiàn)如下:
那么使用opacity實現(xiàn)《背景透明,文字不透明》是不可取的。
(視頻教程推薦:css視頻教程)
二、css3的rgba
所謂RGBA顏色,顧名思意就是R+G+B+A的顏色,再具體點就是red+green+blue+alpha的顏色,翻譯一下就是紅+綠+藍+Alpha透明的顏色。
background:rgba(200, 54, 54, 0.5);
其中,表示半透明度的0.5前面的0是可以省掉的,直接.5也是可以的。
兼容性:IE6、7、8不支持,IE9及以上版本和標準瀏覽器都支持
解決IE8瀏覽器不支持rgba的方法:
background:rgba(0,0,0,0.5); filter: progid:DXImageTransform.Microsoft.gradient(startcolorstr=#7F000000,endcolorstr=#7F000000);
使用說明:設(shè)置顏色的不透明度,一般用于調(diào)整background-color、color、box-shadow等的不透明度。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>css3的rgba</title> <style> .demo{ padding: 25px; background-color:#000000;/* IE6和部分IE7內(nèi)核的瀏覽器(如QQ瀏覽器)下顏色被覆蓋 */ background-color:rgba(0,0,0,0.2); /* IE6和部分IE7內(nèi)核的瀏覽器(如QQ瀏覽器)會讀懂,但解析為透明 */ } .demo p{ color: #FFFFFF; } </style> </head> <body> <div class="demo"> <p>背景透明,文字也透明</p> </div> </body> </html>
在background-color中使用rgba,標準瀏覽器中,背景透明,文字不透明,展現(xiàn)如下:
那么使用rgba實現(xiàn)背景透明,文字不透明是可取的。