关于IE6的PNG图像透明使用AlphaImageLoader的缺点
2014-12-07 19:43
344 查看
PNG32的alpha透明效果在IE6下会出现bug,出现灰色背景。而目前的解决方案就是
IE提供的滤镜。需要注意的是滤镜并不是对原图片进行修改,而是对相应的html元素进行
修改。所以在一个html中的多处使用alpha滤镜,那么性能的损耗将会累加。
现总结使用滤镜的缺点:
1,IE6下使用滤镜,那么无法对该PNG图片进行定位。可以通过其他解决方案完成。这篇
文章提到了两种解决方案,分别是硬编码和clip方案。
2,使用滤镜会冻结IE6的渐进渲染。渲染往往是从css下载完毕开始进行,然而对于使用滤镜
图片而言,渲染得从该图片下载完成才开始。当页面有多个图片使用了透明PNG(对于IE6),那么
滤镜的处理是叠加的,得等到所有PNG图片下载完成之后才能开始渲染,在此之前呈现给我们的将是
空白页面。
3,内存占用大,主要用于处理和应用滤镜。
可以使用PNG8图片进行渐进增强。PNG8支持alpha通道,而且PNG8的半透明像素会在IE6下显示为
完全透明。这就提供了向下兼容的方案。在IE7及其以上的浏览器显示alpha透明度,而在IE6下为全透明。
IE提供的滤镜。需要注意的是滤镜并不是对原图片进行修改,而是对相应的html元素进行
修改。所以在一个html中的多处使用alpha滤镜,那么性能的损耗将会累加。
现总结使用滤镜的缺点:
1,IE6下使用滤镜,那么无法对该PNG图片进行定位。可以通过其他解决方案完成。这篇
文章提到了两种解决方案,分别是硬编码和clip方案。
2,使用滤镜会冻结IE6的渐进渲染。渲染往往是从css下载完毕开始进行,然而对于使用滤镜
图片而言,渲染得从该图片下载完成才开始。当页面有多个图片使用了透明PNG(对于IE6),那么
滤镜的处理是叠加的,得等到所有PNG图片下载完成之后才能开始渲染,在此之前呈现给我们的将是
空白页面。
3,内存占用大,主要用于处理和应用滤镜。
可以使用PNG8图片进行渐进增强。PNG8支持alpha通道,而且PNG8的半透明像素会在IE6下显示为
完全透明。这就提供了向下兼容的方案。在IE7及其以上的浏览器显示alpha透明度,而在IE6下为全透明。
相关文章推荐
- 关于IE6不能兼容LCUC使用的PNG透明图象
- 【转】IE6支持PNG透明(alpha通道)的4种方法
- IE6 使用png透明图片的方法 [非JS方法]
- 如何在Delphi TImageList 中使用 透明 png 图标
- 关于IE6中PNG透明图片的问题
- 使用DD_belatedPNG让IE6支持PNG透明图片
- 使用DD_belatedPNG让IE6支持PNG透明图片
- 使用DD_belatedPNG让IE6支持PNG透明图片
- 使用DD_belatedPNG让IE6支持PNG透明图片
- 在IE6中使用透明格式的PNG图片
- 使用IEPNGFix 2.0解决IE6支持PNG透明问题
- IE6使用png透明图片的方法
- 关于PNG透明,IE6,PNG8,PNG24,PNG32
- AlphaImageLoader使用方法
- IE6 使用png透明图片的方法 [非JS方法]
- 使用IEPNGFix 2.0解决IE6支持PNG透明问题
- 【IE6的疯狂之二】IE6中PNG Alpha透明(全集)
- 在ie6中使用png格式的透明图像
- PNG alpha transparency: AlphaImageLoader filter flaws