前端 · 2010 年 4 月 3 日

IE6支持PNG透明(alpha通道)的方法

IE6与生俱来就支持png8的索引色透明度,但不支持png的 alpha 透明度。而我们一直要解决的是让IE6支持PNG的 alpha 透明度。

* IE6支持png8透明:

IE6与生俱来就支持png8的索引色透明度,但不支持png或8位以上的 alpha 透明度。而对于非动画的GIF建议你使用PNG8,因为体积会更小

* 利用AlphaImageLoader滤镜【目前最完美的解决方式,能提高很大的性能】
这个js插件使用了微软的VML语言进行绘制,而其他多数解决PNG问题的js插件用的是AlphaImageLoader滤镜.
原文:http://dillerdesign.com/experiment/DD_belatedPNG/#download

首先下载:点击下载

在html头部引用,如下:
<!–[if IE 6]><script src="VmlPNG.js"></script><script>VmlPNG.fix('.png_bg');</script><![endif]–>

注意这里 VmlPNG.fix(’.png_bg’); 括号里面指定css选择器,多个选择器要用“,”(没有引号,逗号是英文逗号)隔开,可以是 .someselector 或者是 #someselector,如果你觉得这样指定选择器太麻烦,可以使用通配符 * 即把 (’.png_bg’) 写成 (’*') 即可。