IE过渡滤镜 + CSS3 rgba 即可完美实现。
具体实现代码如下:
1
2
3
4
5
6
7
|
.transparent { background:rgba(0, 0, 0, 0.3);
filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=‘#4c000000‘, EndColorStr=‘#4c000000‘);
} :root .transparent { filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=‘#00000000‘, EndColorStr=‘#00000000‘);
} |
提示:IE9 支持 filter 与 rgba 属性,这会导致其背景透明度双倍叠加!
解决:使用 :root
伪类为 IE9 单独写 HACK 并将其透明度降为 0 即可。