背景透明文字不透明的最佳方法兼容IE(以背景黑色透明度0.5为例)

以背景黑色,透明度0.5举例为大家详细介绍下关于背景透明,文字不透明的最佳方法同时兼容IE,具体实现如下,感兴趣的朋友可以参考下哈希望对大家有所帮助

以背景黑色,透明度0.5举例 

非IE:background:rgba(0,0,0,0.5); 

IE: filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#7f000000,endColorstr=#7f000000); 

PS:#7f000000 其中7f是透明度0.5转换成16进制的数值,000000是黑色的16进制数值 

具体数值转换可以参考

rgba 和IE下filter数值的转换
rgba 透明值        IEfilter值

0.1 19
0.2 33
0.3 4C
0.4 66
0.5 7F
0.6 99
0.7 B2
0.8 C8
0.9 E5


直接取整计算的,没有进位直接舍去 
alpha*255再转换成16进制即可

我个人认为这个写法是最好的,无需单独定义背景层,代码精简,本人一直在用,兼容IE6,有更好的解决办法,欢迎留言探讨

posted @ 2014-10-24 22:03  imsomnus  阅读(259)  评论(0编辑  收藏  举报