今天发现使用box-shadow属性,可以很好的给p添加阴影效果,但是添加的效果如果是:
-moz-box-shadow:0 4px 4px #999; -webkit-box-shadow:0 4px 4px #999; box-shadow:0 4px 4px #999;
使用#设置的颜色是没有透明效果的。这样设置阴影的颜色,如果阴影落在的位置不是白色的,甚至是动态的,例如落在了幻灯片上,好几张不同颜色的图片轮播。那么这样设置阴影的颜色,会是阴影效果看起来很假!
解决办法:使用rgba来代替。
-moz-box-shadow:0 4px 4px rgba(0, 0, 0, 0.4); -webkit-box-shadow:0 4px 4px rgba(0, 0, 0, 0.4); box-shadow:0 4px 4px rgba(0, 0, 0, 0.4);
这里要交代一下:
ie6和ie7应该是不支持box-shadow属性的。
可以使用:*filter: progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color="#888888"); 来代替
由于我设置的阴影并不要求一定要在所有浏览器中显示。所以我没有添加这行代码,所以也没有验证在这里将Color="#888888"中的颜色用rgba来代替是否可行,有需要的朋友自己验证去,估计够呛!
我的原则:
只要不是布局错位等问题,我是不会做兼容性修改的。
为了少部分不升级浏览器的顽固派,没有必要增加一行冗余代码,既然用的旧版本浏览器,那看到的效果不够漂亮是肯定的。
之所以好多旧版本ie浏览器到现在还存在,都是前端惯的!
以上是css:box-shadow的透明度如何设置?的详细内容。更多信息请关注PHP中文网其他相关文章!