DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> CSS入門知識 >> CSS進階教程 >> CSS實現透明效果顏色的方法:RGBa
CSS實現透明效果顏色的方法:RGBa
編輯:CSS進階教程     

RGBa是一種在CSS中聲明包含透明效果的顏色的方法,它的語法是這樣的:

1
2
3
div {
   background: rgba(200, 54, 54, 0.5);
}

它允許我們為元素添加透明色。或許我們習慣了使用”opacity“,它很簡單易用,但是,opacity會使所有的子元素都變成透明的,而且很難去解決這個問題。(除非使用怪異的定位hack) 跨浏覽器透明同樣頗為棘手。

通過RGBa,我們可以將一個元素設置為透明,而不會影響其子元素:

聲明一個保留顏色

並非所有的浏覽器支持RGBa,所以如果允許的話,可以聲明一個保留色彩。這個色彩應該是可靠的——所有的浏覽器都支持。不聲明就意味著,在不支持RGBa的浏覽器裡面,沒有使用顏色。

1
2
3
4
div {
   background: rgb(200, 54, 54); /* The Fallback */
   background: rgba(200, 54, 54, 0.5);
}</code>

不過,這條退路在某些古董級浏覽器中依然無效。

RGBa的浏覽器支持情況

浏覽器,版本,操作系統 測試結果 退路 Firefox 3.0.5 (OS X, Windows XP, Vista) 支持 — Firefox 2.0.0.18 (PC) 不支持 純色 Safari 4 (Developer Preview, Mac) 支持 — Safari 3.2.1 (PC) 支持 — Mobile Safari (iPhone) 支持 — Opera 9.6.1 不支持 純色 IE 5.5 (PC via IETester) 不支持 無色 IE 6 (PC via IETester) 不支持 純色 IE 7 不支持 純色 IE 8 beta 2 不支持 純色 Google Chrome 1.0.154.43 支持 — Google Chrome 1.0.154.46 支持 — Netscape 4.8 (PC) 不支持 沒有顏色 SeaMonkey 1.1.14 不支持 無色 SeaMonkey 1.1.16 不支持 純色 SeaMonkey 2.0 beta3 支持 — Sunrise 1.7.5 支持 — Stainless 0.2.5 支持 – Flock 2.0.2 支持 – BlackBerry Storm Browser 支持 純色 Camino 1.6.6 不支持 純色

上面的數據是通過測試demo得到的,該測試頁面包含了更多更完整的浏覽器兼容性列表。

對IE浏覽器的更好的退路

因為IE浏覽器支持條件注釋,我們可以拋棄RGB並使用IE的一個私有CSS濾鏡來實現同樣的效果:

1
2
3
4
5
6
7
8
9
<!--[if IE]>
   <style type="text/css">
   .color-block {
       background:transparent;
       filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000050,endColorstr=#99000050);
       zoom: 1;
    } 
    </style>
<![endif]-->
譯自:css-tricks
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved