box-shadow 陰影
使用這個屬性可以讓頁面更有立體感,給元素添加一個陰影,使得元素看起來是懸浮在原來的位置,下面就看看它的用法吧。
1. 官方定義
box-shadow
屬性向框添加一個或多個陰影。
2. 慕課解釋
通過 box-shadow
可以給任意 H5 元素添加陰影,可以是一個,如果用,
號隔開可以添加多個。
3. 語法
box-shadow:h-shadow v-shadow blur color;
.demo{
box-shadow:1px 1px 5px #ccc;
}
屬性值
值 | 說明 |
---|---|
h-shadow | 可選。水平方向陰影位置,以文字的中心為起點 >0 是往右,<0 時候偏左。 |
v-shadow | 可選。豎直方向陰影位置,用法同上。 |
blur | 可選。模糊的大小。 |
color | 可選。陰影的顏色 |
5. 兼容性
IE | Edge | Firefox | Chrome | Safari | Opera | ios | android |
---|---|---|---|---|---|---|---|
all | all | all | all | all | all | all | all |
IE9+、Firefox 4、Chrome、Opera 以及 Safari 5.1.1 支持 box-shadow 屬性。
6. 實例
<div class="demo">
慕課網(wǎng)
</div>
- 給demo添加一個陰影。
.demo{
width: 100px;
height: 100px;
text-align: center;
line-height: 100px;
box-shadow: 1px 1px 5px #ccc;
}
效果圖
- 給demo添加多個陰影。
.demo{
width: 100px;
height: 100px;
text-align: center;
line-height: 100px;
box-shadow: 1px 1px 5px #ccc,2px 2px 5px rgba(255, 25, 25,.5),3px 3px 1px rgba(5, 206, 89, 0.5) ;
}
效果圖
7. 經(jīng)驗分享
它的一把用來給元素添加一個陰影,交互設計師們熱衷于在鼠標覆蓋到元素時候,給元素增加一個懸浮效果,使它變得不同,例如:
.demo{
width:100px;
height:100px;
transition: box-shadow 1s;
}
.demo:hover{
box-shadow: 1px 1px 5px #ccc;
}
而網(wǎng)上常見的 css3 下雨效果,就是利用 box-shadow 顏色疊加的特性制作出來的。
<div class="demo"></div>
.demo{
width: 15px;
height: 15px;
border-radius: 50%;
box-shadow: 100px 100px 4px #dedede, 30px 40px 4px #dedede,70px 20px 4px #dedede,80px 60px 4px #dedede;
}
效果圖
如果畫得密集些就更像了,當然這些就需要專業(yè)的設計師去做一個方案了。
最后這里介紹一下陰影效果使用的竅門。
.demo{
width: 100px;
height: 100px;
text-align: center;
line-height: 100px;;
box-shadow: 15px 0 15px -15px #000, -15px 0 15px -15px #000;
}
效果圖
看完這個例子,我們應該已經(jīng)明白 box-shadow
形成的陰影效果可能是一個組合。
8. 小結(jié)
- 如果給一個元素添加多個陰影,那么后面的顏色層級高于前面的,也就是說如果前 3 個參數(shù)一樣,后面的顏色會覆蓋前面的顏色。
- 不要給不規(guī)則的圖形添加陰影,因為這只會添加到塊級元素中,不會驗證圖片的路徑添加陰影,可以使用濾鏡來達到這樣的效果。