在 CSS3 中,增加了一個 opacity 屬性,允許開發者設置元素的透明度,現在 opacity 已被主流的現代瀏覽器支持,但 opacity 會把被設置的元素及其子元素同時設置為同一個透明度,這樣的透明規則相當不靈活,在實際開發中往往也是會遇到很多麻煩。其實,在 CSS3 中還有另外一套顏色透明解決方案 —— RGBa 。相對于 opacity ,RGBa 可以在單個元素上設置透明度,而不影響其子元素,只是 RGBa 的瀏覽器支持度并沒有 opacity 的廣泛,因此相對較少引起開發者注意。
RGBA(R,G,B,A)
取值:
R:紅色值。正整數 | 百分數
G:綠色值。正整數 | 百分數
B:藍色值。正整數 | 百分數
A:Alpha透明度。取值0~1之間。
下面是用rgba() 設置50%透明度的白色.
RGBA是RGB色彩模型的一個擴展。這個縮寫詞代表紅綠藍三原色的首字母,Alpha值代表顏色的透明度/不透明度。
下面開始詳細介紹 RGBa 顏色。
一. RGBa 顏色基礎
RGBa 在本質上看也是為設置的元素增加了一個 alpha 通道,即在紅色、綠色、藍色三種顏色通道之外增加一個代表透明度的通道,其中 RGB 值使用我們熟悉的用3個 0 到 255 的整數分別表示紅色、綠色、藍色,而 alpha 取值則為 0 到 1 (小數位一位)。下面例舉一個例子說明其具體的使用方式:
在 CSS 2.1 中,支持使用 RGB 色彩聲明(盡管開發者可能更加習慣使用如:#343434 的 16 進制表示方式),例如要為 id 為 example 的 div 元素設置背景色 #343434 ,可以這樣寫
接下來再使用 RGBa ,把例子中的背景顏色修改成帶 0.5 透明度。
增加透明度前后效果如下(為了更明顯的反映透明度帶來的效果,例子中的 body 增加了背景紋理): 
            
新聞熱點
疑難解答