CSS3屬性box-shadow使用詳細(xì)教程

box-shadow:length length length length color
length:陰影水平偏移值
length:陰影垂直偏移值
length:陰影模糊值
length:陰影邊框
color:陰影顏色
說(shuō)明:設(shè)置塊陰影
box-shadow:3px 3px 6px 0px #666
效果如下圖:
box-shadow:-3px -3px 6px 0px #666
效果如下圖:
box-shadow:0px 0px 12px 0px #666
效果如下圖:
box-shadow: 0px 0px 10px 5px #666
效果如下圖:
先來(lái)看一個(gè)這個(gè)屬性的瀏覽器兼容性:
Opera: 不知道是從哪個(gè)版本開(kāi)始支持的,我在發(fā)這篇文章測(cè)試的時(shí)候,正好更新了Opera到最新的10.53版本,已經(jīng)支持box-shadow屬性。firefox通過(guò)私有屬性-moz-box-shadow支持。Safari和Chrome通過(guò)私有屬性-webkit-box-shadow支持。所有IE不支持(不知道IE9是否有所改善)。別急,我們將在文章最后會(huì)介紹一些針對(duì)IE的Hack。2. box-shadow屬性的語(yǔ)法box-shadow有六個(gè)可設(shè)值:
img{box-shadow:陰影類(lèi)型 X軸位移 Y軸位移 陰影大小 陰影擴(kuò)展 陰影顏色 }
當(dāng)不設(shè)陰影類(lèi)型時(shí),默認(rèn)為投影效果。當(dāng)設(shè)為inset時(shí),為內(nèi)陰影效果。X軸和Y軸位移不等同但類(lèi)似于photoshop里面的”角度”和”位置。陰影大小、擴(kuò)展、顏色和Photoshop里面的都同理。3. 實(shí)例解析讓我們通過(guò)幾個(gè)實(shí)例來(lái)看一個(gè)box-shadow的效果,先弄個(gè)簡(jiǎn)單的html供測(cè)試:
請(qǐng)注意:為了省事兒,下面的CSS代碼中只寫(xiě)了box-shadow,在實(shí)際使用中,你應(yīng)該把-moz-box-shadow和-webkit-shadow也寫(xiě)上。你需要做的很簡(jiǎn),復(fù)制兩個(gè)box-shadow,在它們前面分別加上-moz-和-webkit-。
這里的顏色值是HEX值,我們還可以使用RGBA值,RGBA值的好處是,它多了一個(gè)Alpha透明值,你可以控制陰影的透明度。
(2). 在上面的基礎(chǔ)上加上20px的擴(kuò)展
box-shadow可以同時(shí)使用多次,我們來(lái)個(gè)四色的陰影。
當(dāng)給同一個(gè)元素使用多個(gè)陰影屬性時(shí),需要注意它的順序,最先寫(xiě)的陰影將顯示在最頂層。比如下面這段代碼,我們先寫(xiě)一個(gè)10px的綠色陰影,再寫(xiě)一個(gè)10px大小但擴(kuò)展20px的陰影。結(jié)果是:綠色陰影層在黃色陰影層之上。
但如果我們把順序調(diào)一下,像這樣:
我們將看不到后寫(xiě)的綠色陰影層,因?yàn)樗葘?xiě)且半徑比較大的黃色層覆蓋掉了。
4. 讓IE也支持box-shadowIE本身是shadow濾鏡可以實(shí)現(xiàn)類(lèi)似效果的,還有一些js和.htc的hack文件可以幫助你在IE中實(shí)現(xiàn)這一效果。我也無(wú)法一一都去嘗試,這里只介紹我用過(guò)的一個(gè)。
ie-css3.htc是一個(gè)可以讓IE瀏覽器支持部份CSS3屬性的htc文件,不只是box-shadow,它還可以讓你的IE瀏覽器支持圓角屬性border-radius和文字陰影屬性text-shadow。
它的使用方法是:下載它并放到你的服務(wù)器目錄
在你的<head></head>里面寫(xiě)入下面的代碼:
藍(lán)色部份輸入要使用box-shadow屬性的選擇器,綠色部份輸入ie-css3.htc的絕對(duì)路徑,或相對(duì)路徑,反正要保證能訪(fǎng)問(wèn)得到。
然后這樣就OK了。但還是有幾點(diǎn)需要注意的是:
當(dāng)你使用了這個(gè)htc文件后,你的CSS里面,只要寫(xiě)有box-shadow, -moz-box-shadow或-webkit-box-shadow的任何一種,IE就會(huì)渲染。當(dāng)使用了這個(gè)htc文件后,你不能這樣寫(xiě)box-shadow: 0 0 10px red; 而應(yīng)該是box-shadow: 0px 0px 10px red; 否則IE中會(huì)失效。不支持RGBA值中的alpha透明度。不支持inset內(nèi)陰影。不支持陰影擴(kuò)展。陰影在IE中只會(huì)顯示為黑色,不管你設(shè)置成其它什么顏色。所以說(shuō),這個(gè)腳本了僅僅是讓IE支持了部份的box-shadow值。如果你有其它更好的IE hacks腳本,歡迎留言分享。
相關(guān)文章
- 這篇文章主要介紹了CSS3中box-shadow的用法,改方法即是作一個(gè)盒裝區(qū)域的陰影效果,需要的朋友可以參考下2015-07-15
- 這篇文章主要介紹了CSS3屬性box-shadow使用指南,需要的朋友可以參考下2014-12-09
CSS3新屬性transition-property transform box-shadow實(shí)例學(xué)習(xí)
本文將為大家介紹下CSS3新屬性transition-property transform box-shadow的使用,感興趣的朋友可以參考下哈,希望對(duì)你學(xué)習(xí)css3有所幫助2013-06-06CSS3基礎(chǔ)(RGBa、text-shadow、box-shadow、border-radius)
本文介紹CSS 3部分新屬性基礎(chǔ),包括RGBa、text-shadow、box-shadow、border-radius。這些屬性通常用來(lái)增強(qiáng)網(wǎng)頁(yè)布局和美譽(yù)度。(譯者注:在支持CSS3的瀏覽器如Firefox、Safa2012-11-13- 你在使用box-shadow來(lái)實(shí)現(xiàn)陰影效果的時(shí)候,有沒(méi)有注意到有些情況下,陰影并不是透明的效果2011-08-28
CSS text-shadow,box-shadow,border-radius屬性
篇文章將對(duì) CSS 的幾個(gè)新屬性 (text-shadow,box-shadow,and border-radius) 做基本介紹。這些 CSS3 屬性通常用來(lái)加強(qiáng)頁(yè)面布局。2010-03-09Photoshop投影與CSS中box-shadow的轉(zhuǎn)換
box-shadow是給元素塊添加周邊陰影效果,本文給大家介紹Photoshop投影與CSS中box-shadow的轉(zhuǎn)換,對(duì)css中box shadow相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)吧2015-11-27