CSS高级技巧:阴影效果

 

CSS阴影效果 (Drop Shadows)

一点阴影可以给平板的设计增加纵深的感觉, 很多时候我们都是直接用PhotoShop直接制作带阴影的图片以供使用, 这里介绍的是一种不需要修改图片, 而只需要用CSS完成的技巧.

 

原理:

给<img />标签增加一个容器, 给容器设置一个大的阴影背景图像, 然后把<img />利用负值外补丁进行偏移, 使阴影落在图像外侧以达到效果.

 

 

HTML代码如下:

<div class="image_shadow">
<img src=http://www.webjx.com/CSS/20080503/".images/origin_image.jpg" alt="" />
</div>

CSS代码如下:

.image_shadow{position:relative;float:left;clear:right;background:url(../images/shadow.gif) no-repeat right bottom;}
.image_shadow img{position:relative;display:block;margin:-5px 5px 5px -5px;padding:3px;background:white;border:solid 1px #ccc;}

 

红色代码部分是为IE 6准备的, 不然...

Clagnut阴影 :

Richard Rutter提供了一个类似的阴影方法, 他用的是相对定位来偏移图像.

CSS代码如下:

.image_shadow{float:left;line-height:0;background:url(../images/shadow.gif) no-repeat right bottom;}
.image_shadow img{position:relative;left:-5px;top:-5px;padding:3px;background:white;border:solid 1px #ccc;}.


上面的阴影都有点生硬(hard), 我们可以通过建立一个额外的div标签, 再运用一个带透明度的png蒙板来遮盖阴影图片的边缘.

 

 

HTML代码如下:

 

<div class="image_shadow">
<div>
<img src=http://www.webjx.com/CSS/20080503/".images/origin_image.jpg" alt="" />
</div>
</div>

CSS代码如下:

 

.image_shadow{float:left;background:url(../images/shadow.gif) no-repeat right bottom;}
.image_shadow div{float:left;padding:0 5px 5px 0;background:url(../http://www.webjx.com/CSS/20080503/images/shadow_mask.png) no-repeat left top;}
.image_shadow div img{padding:3px; background:white; border:solid 1px #ccc;}

效果如下:

蒙板效果的阴影, 更加自然

无蒙板的阴影, 边缘有点生硬

对于IE 6以下不支持png-24的透明效果, 我们要用到filter 和 hacks了

 

* html .images_shadow div{filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http://www.webjx.com/CSS/20080503/images/shadow_mask.png" ,sizingMethod="crop");}

另还有类似CSS Sprites的方法创建阴影, 同样可以做到自然. 但是额外标签过多, 不推荐.

到此为止CSS高级教程结束.

 

 

 


 
 
 

本站永久域名

www.iulei.com

爱优磊个人网站由站长制作并维护

爱优磊保留本网页的设计版权,任何人在未经许可情况下不得套用。

Copyright ©2015 All rights reserved. 京ICP备14003788