box-shadow 製作單邊陰影效果,不影響其它邊的效果
阿新 • • 發佈:2019-01-27
以前在使用box-shadow製作單邊陰影效果的時候發現或多或少會影響其它邊的展示效果.
今天在閱讀文章的時候,終於發現了一個解決的方法.
就是利用box-shadow中的一個引數.spread來解決這個問題.
首先我們先要區分
box-shadow:0 10px 10px #ccc;
box-shadow:0 10px 10px -10px #ccc;
首先,我們應當認知到這兩種書寫方法都是正確的,其次,它們的展示效果肯定是不同的.
關於box-shadow的具體語法:
E {box-shadow:inset x-offset y-offset blur-radius spread-radius color}
物件選擇器 {text-shadow:投影方式 X軸偏移量 Y軸偏移量 陰影模糊半徑 陰影擴充套件半徑 陰影顏色}
spread引數可以用於改變陰影的大小,其值可以試正負值,如果值為正,則整個陰影都延展擴大,反之值為負值是縮小.
如圖:
html:
<div
class="dv1">
</div>
<div
class="dv2">
</div>
style:
.dv1,.dv2{
width:
100px;
height:
100px;
border:
1px
solid
#ccc;
}
.dv1{
box-shadow:
-5px
0
5px
#ccc,
/*左邊陰影*/
0
-5px
5px
#ccc,
/*頂部陰影*/
0
5px
5px
#ccc,
/*底部陰影*/
5px
0 5px
#ccc;
/*右邊陰影*/
}
.dv2{
box-shadow:
-5px
0
5px
-5px
#ccc,
/*左邊陰影*/
0
-5px
5px
-5px
#ccc,
/*頂部陰影*/
0
5px
5px
-5px
#ccc,
/*底部陰影*/
5px
0 5px
1px
#ccc;
/*右邊陰影*/
}
注意控制第四個spread值來達到顯示單邊陰影的效果.
參考:http://www.w3cplus.com/css3/css3-box-shadows-unnoticed-spread