boxshadow(CSS3属性boxshadow详细介绍)

被浏览:9406

关注者:210

最佳回答:

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

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

box-shadow有六个可设的值:

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

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

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

(1). 投影,没有位移,10px的阴影大小,没有扩展,颜色#06C

p

这里的颜色值是HEX值,我们还可以使用RGBA值,RGBA值的好处是,它多了一个Alpha透明值,你可以控制阴影的透明度。

(2). 在上面的基础上加上20px的扩展

p

(3). 内阴影,无位移,10px大小,没有扩展,颜色#06C

p

(4). 多重阴影效果

box-shadow可以同时使用多次,我们来个四色的阴影。

p

(5). 使用多个阴影属性的顺序问题

当给同一个元素使用多个阴影属性时,需要注意它的顺序,最先写的阴影将显示在最顶层。比如下面这段代码,我们先写一个10px的绿色阴影,再写一个10px大小但扩展20px的阴影。结果是:绿色阴影层在黄色阴影层之上。

p

但如果我们把顺序调一下,像这样:

p

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

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

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

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

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

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

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

所以说,这个脚本仅仅是让IE支持了部份的box-shadow值。

获赞数:186

收藏数:30

回答时间:2024-04-07 21:26:16