有时候,为了网页上的元素呈现的更加好看,可以给某一个块元素增加阴影效果。
在以往的方案中,可以搞一个背景图片,做成一个有阴影效果的背景图,但是随着css3的出现,可以直接使用css的box-shadow属性做出阴影效果来。
box-shadow属性出现,因为不用搞背景图片了,这样省了一些不必要的麻烦,也可以加快网站的打开速度。
语法
box-shadow:X轴偏移量(h-shadow) Y轴偏移量(v-shadow) 模糊半径(blur) 扩散半径(spread) 颜色(color) inset
属性
属性 | 说明 |
h-shadow | 这个值必须的,表示水平阴影的位置,允许负值 正值阴影在右边,负值阴影在左边,0的时候阴影中盒子后面,看不见的,如果有blur值会有模糊效果 |
v-shadow | 这个值也是必须的,表示竖直阴影的位置,允许负值 正值阴影在下面,负值阴影在上面 |
blur | 非必须,表示模糊距离,值越大,阴影越模糊 |
spread | 非必须,表示阴影的大小,正值时阴影扩大,负值时阴影缩小,默认为0,和盒子同样大 |
color | 非必须,阴影的颜色,默认值为黑色 |
inset | 非必须,将外部阴影(outset)改为内部阴影。 |
前两个属性是必须写的。其余的可以省略;
控制阴影左右显示使用h-shadow,控制阴影的上下显示使用v-shadow ;
阴影的大小使用spread,阴影的颜色使用color。
外阴影(outset)是默认的,可以省略,想要内阴影可以写 inset。
例子
<!DOCTYPE html>
<html>
<title>css box-shadow 阴影属性例子</title>
<head>
<style>
div
{
float:left;
margin-left:20px;
margin-top:10px;
color:#000;
width:150px;
height:100px;
background-color:orange;
text-align:center;
}
.div1{ box-shadow: 6px 6px;}
.div2{ box-shadow: 6px 6px 8px;}
.div3{ box-shadow: 6px 6px 8px 8px;}
.div4{ box-shadow: 6px 6px 8px 8px red;}
.div5{ box-shadow: 6px 6px 8px 8px red inset;}
.div6{ box-shadow: 0px 0px 8px 8px red inset;}
</style>
</head>
<body>
<div class="div1">2个值</div>
<div class="div2">3个值<br>增加了模糊度</div>
<div class="div3">4个值<br>阴影扩散</div>
<div class="div4">5个值<br>修改阴影的颜色</div>
<div class="div5">6个值<br>外部阴影改为内部阴影inset</div>
<div class="div6">让阴影在外部均匀显示</div>
</body>
</html>
效果如图所示: