CSS3属性box-shadow详解

网络整理 - 07-27

关于box-shadow的属性介绍建站学有不少内容,这里转发另外一篇关于该属性的介绍文章。

CSS3的box-shadow属性可以让我们轻松实现图层阴影效果。我们来实战详解一下这个属性。

1. box-shadow属性的浏览器兼容性

先来看一个这个属性的浏览器兼容性:

2. box-shadow属性的语法

box-shadow有六个可设值:

img{box-shadow:阴影类型 X轴位移 Y轴位移 阴影大小 阴影扩展 阴影颜色 }

3. 实例解析

让我们通过几个实例来看一个box-shadow的效果,先弄个简单的html供测试:

<html><head><style type="text/css">CSS部份写在这里</style></head><body><img  src=http://www.jzxue.com/wangyesheji/css/201105/"test.jpg" /></body></html>

请注意:为了省事儿,下面的CSS代码中只写了box-shadow,在实际使用中,你应该把-moz-box-shadow和-webkit-shadow也写上。你需要做的很简,复制两个box-shadow,在它们前面分别加上-moz-和-webkit-。

img {-moz-box-shadow:2px 2px 10px #06C;-webkit-box-shadow:2px 2px 10px #06C;box-shadow:2px 2px 10px #06C;}(1). 投影,没有位移,10px的阴影大小,没有扩展,颜色#06C img{box-shadow:0 0 10px #06C;}

我们将看不到后写的绿色阴影层,因为它先写且半径比较大的黄色层覆盖掉了。

4. 让IE也支持box-shadow

IE本身是shadow滤镜可以实现类似效果的,还有一些和.htc的hack文件可以帮助你在IE中实现这一效果。我也无法一一都去尝试,这里只介绍我用过的一个。

ie-css3.htc是一个可以让IE浏览器支持部份CSS3属性的htc文件,不只是box-shadow,它还可以让你的IE浏览器支持圆角属性border-radius和文字阴影属性text-shadow。

它的使用方法是:下载它并放到你的服务器目录

在你的<head></head>里面写入下面的代码:

<!--[if IE]><style type="text/css">img, #testdiv, .testbox{behavior: url();}</style><![endif]-->

蓝色部份输入要使用box-shadow属性的选择器,绿色部份输入ie-css3.htc的绝对路径,或相对路径,反正要保证能访问得到。

然后这样就OK了。但还是有几点需要注意的是:

所以说,这个脚本了仅仅是让IE支持了部份的box-shadow值。如果你有其它更好的IE hacks脚本,欢迎留言分享。