CSS通過RGBa將一個元素設(shè)置為透明效果
發(fā)布時間:2014-04-01 17:32:22 作者:佚名
我要評論

RGBa是一種在CSS中聲明包含透明效果的顏色的方法,通過RGBa,我們可以將一個元素設(shè)置為透明,而不會影響其子元素,下面有個不錯的示例,大家可以參考下
RGBa是一種在CSS中聲明包含透明效果的顏色的方法,它的語法是這樣的:
div {
background: rgba(200, 54, 54, 0.5);
}
它允許我們?yōu)樵靥砑油该魃;蛟S我們習(xí)慣了使用”opacity“,它很簡單易用,但是,opacity會使所有的子元素都變成透明的,而且很難去解決這個問題。(除非使用怪異的定位hack) 跨瀏覽器透明同樣頗為棘手。
通過RGBa,我們可以將一個元素設(shè)置為透明,而不會影響其子元素:
聲明一個保留顏色
并非所有的瀏覽器支持RGBa,所以如果允許的話,可以聲明一個保留色彩。這個色彩應(yīng)該是可靠的——所有的瀏覽器都支持。不聲明就意味著,在不支持RGBa的瀏覽器里面,沒有使用顏色。
div {
background: rgb(200, 54, 54); /* The Fallback */
background: rgba(200, 54, 54, 0.5);
}</code>
不過,這條退路在某些古董級瀏覽器中依然無效。
RGBa的瀏覽器支持情況
上面的數(shù)據(jù)是通過測試demo得到的,該測試頁面包含了更多更完整的瀏覽器兼容性列表。
對IE瀏覽器的更好的退路
因為IE瀏覽器支持條件注釋,我們可以拋棄RGB并使用IE的一個私有CSS濾鏡來實現(xiàn)同樣的效果:
<!--[if IE]>
<style type="text/css">
.color-block {
background:transparent;
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000050,endColorstr=#99000050);
zoom: 1;
}
</style>
<![endif]-->
復(fù)制代碼
代碼如下:div {
background: rgba(200, 54, 54, 0.5);
}
它允許我們?yōu)樵靥砑油该魃;蛟S我們習(xí)慣了使用”opacity“,它很簡單易用,但是,opacity會使所有的子元素都變成透明的,而且很難去解決這個問題。(除非使用怪異的定位hack) 跨瀏覽器透明同樣頗為棘手。
通過RGBa,我們可以將一個元素設(shè)置為透明,而不會影響其子元素:

聲明一個保留顏色
并非所有的瀏覽器支持RGBa,所以如果允許的話,可以聲明一個保留色彩。這個色彩應(yīng)該是可靠的——所有的瀏覽器都支持。不聲明就意味著,在不支持RGBa的瀏覽器里面,沒有使用顏色。
復(fù)制代碼
代碼如下:div {
background: rgb(200, 54, 54); /* The Fallback */
background: rgba(200, 54, 54, 0.5);
}</code>
不過,這條退路在某些古董級瀏覽器中依然無效。
RGBa的瀏覽器支持情況

上面的數(shù)據(jù)是通過測試demo得到的,該測試頁面包含了更多更完整的瀏覽器兼容性列表。
對IE瀏覽器的更好的退路
因為IE瀏覽器支持條件注釋,我們可以拋棄RGB并使用IE的一個私有CSS濾鏡來實現(xiàn)同樣的效果:
復(fù)制代碼
代碼如下:<!--[if IE]>
<style type="text/css">
.color-block {
background:transparent;
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000050,endColorstr=#99000050);
zoom: 1;
}
</style>
<![endif]-->
相關(guān)文章
- 今天看到一個網(wǎng)頁使用了rgba不知道這個a是什么意思,原來是因為了忘了下面的顏色比上面的淺一些特別用rgba確實很方便,頁面也不突兀,特分享一下需要的朋友可以參考下2020-03-05
- 這篇文章主要介紹了顏色之ARGB與RGB、RGBA的區(qū)別與介紹,需要的朋友可以參考下2020-03-05
詳解css透明度之rgba和opacity的區(qū)別及兼容
對于設(shè)置透明度,我們有兩個可以選的css3屬性:rgba 和 opacity。這篇文章主要介紹了詳解css透明度之rgba和opacity的區(qū)別及兼容,感興趣的可以一起跟隨小編來了解一下2019-01-10css中使用rgba和opacity設(shè)置透明度的區(qū)別(附圖)
這篇文章主要介紹了css中使用rgba和opacity設(shè)置透明度的兩種方法,通過實例演示解釋了兩者之間的差別,需要的朋友可以參考下2017-08-14- 下面小編就為大家?guī)硪黄昝澜鉀QIE8下不兼容rgba()的問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-03-31
CSS3中使用RGBa來調(diào)節(jié)透明度的教程
這篇文章主要介紹了CSS3中使用RGBa來調(diào)節(jié)透明度的教程,RGBA是RGB色彩模型的一個擴展,這個縮寫詞代表紅綠藍(lán)三原色的首字母,Alpha值代表顏色的透明度或者說不透明度,需要的朋2016-05-09- 這篇文章主要以設(shè)計帶有陰影邊框的表單為例,為大家介紹了CSS3 RGBA色彩模式使用方法,感興趣的小伙伴們可以參考一下2016-04-26
CSS3的RGBA中關(guān)于整數(shù)和百分比值的轉(zhuǎn)換
這篇文章主要介紹了CSS3的RGBA中關(guān)于整數(shù)和百分比值的轉(zhuǎn)換,同時提到了關(guān)于瀏覽器的支持問題,需要的朋友可以參考下2015-08-04- 這篇文章主要介紹了CSS3中使用RGBA設(shè)置透明度的示例,即在傳統(tǒng)的RGB值上增添調(diào)節(jié)透明度的Alpha值,需要的朋友可以參考下2015-08-04
- 我們今天需要討論的RGBA。如果需要更詳細(xì)的解說,大家就跟著我一起往下看吧2013-08-06