詳解CSS3的opacity屬性設(shè)置透明效果的用法

CSS3 opacity 屬性的功能是用來控制網(wǎng)頁(yè)元素的透明效果(調(diào)整不透明度),早期網(wǎng)頁(yè)設(shè)計(jì)常常會(huì)用到許多的透明效果,通常都是透過 png 圖層來制作透明的感覺,現(xiàn)在網(wǎng)頁(yè)設(shè)計(jì)師可以使用 CSS3 opacity 屬性來輕松的達(dá)到網(wǎng)頁(yè)元素不透明度的調(diào)整,CSS3 opacity 屬性的語法非常簡(jiǎn)單,只需要透過數(shù)字的調(diào)整,就能呈現(xiàn)出不同的不透明度,進(jìn)而設(shè)計(jì)出相當(dāng)具有現(xiàn)代感的網(wǎng)頁(yè)風(fēng)格,可應(yīng)用在網(wǎng)頁(yè)圖片、DIV 區(qū)塊、span 區(qū)域、Table 表格 ... 等元素,所有新版的主流瀏覽器都支援 CSS3 opacity 屬性的效果。
CSS3 opacity 屬性基本語法
opacity: 不透明度;
CSS3 opacity 屬性參數(shù)的"不透明度"是以數(shù)字表示,從 0.0 至 1.0 都可以,完全透明是 0.0,完全不透明是 1.0,換句話說,數(shù)字越大代表元素越不透明。參數(shù)除了可以使用"不透明度"之外,還有 inherit 繼承父層屬性,不過瀏覽器支援度較差,不建議使用。
CSS3 opacity 屬性實(shí)際范例
- <div style="padding:10px;background-color:green;opacity:0.1;">
- 測(cè)試 CSS3 opacity 屬性的不透明度處理
- </div>
- <div style="padding:10px;background-color:green;opacity:0.5;">
- 測(cè)試 CSS3 opacity 屬性的不透明度處理
- </div>
- <div style="padding:10px;background-color:green;opacity:0.8;">
- 測(cè)試 CSS3 opacity 屬性的不透明度處理
- </div>
范例的輸出效果
范例共準(zhǔn)備了三個(gè)加入 opacity 效果的 DIV 區(qū)塊,各位可以注意到從最上面開始的第一個(gè)區(qū)塊,不透明度為 0.1(opacity:0.1)所以整個(gè)區(qū)塊變成幾乎快看不到顏色與文字,第二個(gè)區(qū)塊不透明度設(shè)為 0.5(opacity:0.5),所以比第一個(gè)區(qū)塊清楚多了,第三個(gè)區(qū)塊再度降低不透明度到 0.8,文字與背景顏色都越更加明顯,這就是 CSS3 opacity 屬性的實(shí)際效果,由范例可以很清楚的看到,一個(gè) DIV 區(qū)塊內(nèi)的文字內(nèi)容與背景顏色(background-color)都會(huì)受到 opacity 屬性的不透明度影響。
補(bǔ)充:目前新版的主流瀏覽器均有支援 CSS3 opacity 屬性,但需要注意的是 IE8 以即更早版本的 IE 瀏覽器必須使用替代語法來實(shí)做,所謂的替代語法是利用 filter 屬性,寫法如「filter:Alpha(opacity=50);」,效果等于「opacity:0.5」。
opacity透明度屬性的繼承問題
CSS3的opacity透明度屬性具有繼承性,當(dāng)對(duì)某個(gè)對(duì)象設(shè)置了opacity透明度屬性的時(shí)候,其子集元素也會(huì)有透明度效果;
- <div class="main">
- <div class="div1">
- <p>背景色為rgb的opacity效果</p>
- </div>
- <div class="div2">
- <p>背景色為rgba的透明效果</p>
- </div>
- </div>
CSS:
- .main{
- clear:rightright;
- margin:20% auto;
- overflow:hidden;
- width:335px;
- }
- .main div{
- color:red;
- float:left;
- display:inline-block;
- width:160px;
- height:160px;
- text-align:center;
- }
- /*使用opacity透明屬性的顯示效果*/
- .div1{background-color:rgb(0,0,0);
- opacity:0.5;
- filter:alpha(opacity=50);
- -ms-filter:'progid:DXImageTransform.Microsoft.Alpha(opacity=50)';margin-right:15px;
- }
- .div1 p{
- position:relative;
- }
- /*使用rgba色顯示的效果*/
- .div2{
- background:rgba(0,0,0,.5)
- }
總結(jié): 使用rgba的背景色可以很直接的設(shè)置對(duì)象的透明度效果,而且對(duì)其子集元素沒有繼承性;而使用rgb色并設(shè)置opacity透明度屬性的對(duì)象卻產(chǎn)生了透明度繼承。
不過,可能你把整個(gè)代碼都copy下來并在IE9以下的瀏覽器都測(cè)試的話,你會(huì)發(fā)現(xiàn)在IE7、IE8瀏覽器中出現(xiàn)了設(shè)置opacity透明度屬性的對(duì)象中子集元素并沒有繼承父集元素的透明度效果,并且設(shè)置了背景色為rgba的對(duì)象反而沒有任何效果。這是因?yàn)椋?在設(shè)置了opacity透明度屬性的對(duì)象中的子集元素設(shè)置了position:relative屬性,這才使得它在IE9以下的瀏覽器中得到了解決;其次在IE9以下的瀏覽器并不兼容rgba色,所以,你會(huì)看到第二種的背景色沒有效果。
相關(guān)文章
通過css3動(dòng)畫和opacity透明度實(shí)現(xiàn)呼吸燈效果
這篇文章主要介紹了通過css3動(dòng)畫和opacity透明度實(shí)現(xiàn)呼吸燈效果,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編2019-08-09詳解css透明度之rgba和opacity的區(qū)別及兼容
對(duì)于設(shè)置透明度,我們有兩個(gè)可以選的css3屬性:rgba 和 opacity。這篇文章主要介紹了詳解css透明度之rgba和opacity的區(qū)別及兼容,感興趣的可以一起跟隨小編來了解一下2019-01-10CSS中 opacity的設(shè)置影響了index(層數(shù))的改變的問題總結(jié)(推薦)
這篇文章主要介紹了CSS中 opacity的設(shè)置影響了index(層數(shù))的改變的問題,通過各種情況出現(xiàn)的問題進(jìn)行了總結(jié)并附上了代碼,具體操作步驟大家可查看下文的詳細(xì)講解,感興趣2017-08-17css中使用rgba和opacity設(shè)置透明度的區(qū)別(附圖)
這篇文章主要介紹了css中使用rgba和opacity設(shè)置透明度的兩種方法,通過實(shí)例演示解釋了兩者之間的差別,需要的朋友可以參考下2017-08-14詳解CSS透明opacity和IE各版本透明度濾鏡filter的最準(zhǔn)確用法
CSS3的透明度屬性opacity想必大家都已經(jīng)用的無處不在了。而對(duì)于不支持CSS3的瀏覽器如何進(jìn)行透明處理,保持瀏覽器效果的一致,本篇文章主要介紹了詳解CSS透明opacity和IE各版2016-12-20- 這篇文章主要介紹了解決CSS3的opacity屬性帶來的層疊順序問題的方法,主要針對(duì)opacity的屬性值小于1的層會(huì)覆蓋在其他層之上的問題,需要的朋友可以參考下2016-05-09
- 用來設(shè)定元素透明度的 Opacity 是CSS 3里的一個(gè)屬性。當(dāng)然現(xiàn)在還只有少部分瀏覽器支持,不過各個(gè)瀏覽器都有自己的私有屬性來支持,其中包括老版本的Mozilla和Safari2015-11-09
- 這篇文章主要介紹了CSS3中的opacity屬性使用教程,主要用來設(shè)置透明效果,需要的朋友可以參考下2015-08-19
- CSS 圖像透明度opacity想必大家并不陌生吧,使其可以讓圖片或者頁(yè)面擁有透明效果,下面為大家講解下CSS opacity的使用及其兼容性,感興趣的朋友可以參考下2013-09-08
CSS Alpha透明相關(guān)知識(shí)學(xué)習(xí)-CSS教程-網(wǎng)頁(yè)制作-網(wǎng)頁(yè)教學(xué)網(wǎng)
圖片的透明效果是網(wǎng)頁(yè)中需要用到的一種特殊形式,雖然不是非常的常用,但是遇到這樣的需求往往有點(diǎn)措手不及,在webjx.com的文章中雖然有這方面的CSS實(shí)例,但還沒有系統(tǒng)2008-10-17