如何用CSS实现DIV块的阴影效果

html-css018

如何用CSS实现DIV块的阴影效果,第1张

可以用CSS3的阴影属性。 不过要支持IE6的话,加载个 .htc 行为文件就好了。border: 1px solid #696padding: 60px 0text-align: centerwidth: 200px-webkit-box-shadow: #666 0px 0px 10px-moz-box-shadow: #666 0px 0px 10pxbox-shadow: #666 0px 0px 10pxbackground: #EEFF99behavior: url(/PIE.htc)。\x0d\x0a直接使用box-shadow:5px 5px 10px black inset属性设置样式样式就可以了。前两个值(5px 5px)是水平和垂直方向的偏移量,正值阴影就会向左向下偏移,负值反之;第三个值(10px)是设置模糊距离;black就是阴影的颜色啦;最后一个inset是在元素内部创建一个阴影,也就是内阴影了;删除掉inset就是设置外阴影了。\x0d\x0a这是使用纯CSS实现的效果,在DIV层的区域边框添加阴影效果,看上去非常形象,但是实现起来并不是太难,CSS代码比较简洁,值得我们学习。盒子阴影的CSS实现方法

1、首先新建一个html文件,命名为test.html,使用div标签创建一个模块,用于测试。如下图所示。

2、在test.html文件内,给div添加一个class属性,属性值设置为myway。

3、然后在css标签内,通过class设置div的样式,定义它的宽度为200px,高度为200px,背景颜色为黑色。

4、接着在css标签内,再使用box-shadow属性设置div的阴影效果,其中,左边阴影为绿色,顶部阴影为蓝色,底部阴影为红色,右边阴影为黄色。

5、最后在浏览器打开test.html文件,查看实现的效果,如下图所示就完成了。

颜色(color):rgb(0,0,0)

不透明度(opacity):10%

角度(Angle):投影的角度

距离(Distance):阴影的距离。根据角度和距离可以换算出CSS3阴影中的x-offset和y-offet。 x-offset = Distance * cos(180 -Angle) , y-offset = Distance * sin(180 - Angle)

扩展(Spread): 阴影的扩展大小。控制阴影实体颜色和虚化颜色的多少。 Spread * Size = 阴影中实体颜色的大小 。剩下的就是虚化的颜色。CSS3阴影 spread-radius = Spread * Size

大小(Size): 阴影的大小。在CSS3中 blur-radius + spread-radius = Size 即 blur-radius = Size - spread-radius

x-offset: 87 * cos(180°-(- 90°)) = 0px(87=Distance(ps上的距离),-90°=Angle(ps上的角度))

y-offset: 87 * sin(180°- (- 90°)) =-87px(同理,注意是sin,不是cos)

spread-radius: 0*73=0px(0=Spread(ps上的扩展),73=Size(ps上的大小))

blur-radius: 73-0=73px(73=Size(ps上的大小),0=spread-radius(上一行的数据))

color+opacity:rgba(0,0,0,.1) (.1就是10%,就是不透明度)