关于IE6的PNG图像透明使用AlphaImageLoader的缺点

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下为全透明。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏IMWeb前端团队

CSS3动画实现菜单特效

本文作者:IMWeb 寒纱阁主 原文出处:IMWeb社区 未经同意,禁止转载 制作了一个简单的菜单特效: ? 以下是HTML5代码: <!DOCTY...

32970
来自专栏pangguoming

使用svgdeveloper 和 svg-edit 绘制svg地图

目录: 1. 描述 2. 准备工作 3. 去除地图模板上的水印(可跳过) 4. 方法一、SVGDeveloper 5. 方法二、SVG-Edit 1. 描述 有...

58850
来自专栏Angular&服务

VSCode开发Angular2+TypeScript插件

1.Angular TypeScript Snippets for VS Code 2.Angular VS Code TypeScript and HTML...

21420
来自专栏菩提树下的杨过

Silverlgiht:快速去除/恢复对象的颜色

某些场景下,想将一个对象快速隐藏、恢复,而且不影响布局。有一种方法:将对象的透明度在1与0之间切换。 问:为什么不用Visibility? 答:这通常会导致重...

19570
来自专栏LeoXu的博客

[翻译]Ext JS 教程-布局和容器 原

布局系统是ExtJS中一个强大的组成部分。它控制着应用程序的每一个组件的尺寸和位置。这个操作手册包含开始使用布局的基础操作。

14110
来自专栏九彩拼盘的叨叨叨

学习前端 第1周第2天

9620
来自专栏河湾欢儿的专栏

css3二倍图

比如以300200px 的图片举例:如果想让这张图片在 Retina 屏幕下达到应有的显示分辨率, 只需使用该照片的源文件导出一张清晰的 600400px 的...

22940
来自专栏源码之家

博看网杂志下载时批量更改图片大小

12920
来自专栏Porschev[钟慰]的专栏

解决文本框在updatepanel中得到焦点,输入法不能切换到中文的问题

今天看人提问才发现TextBox放在updatepanel中,当点击Button时,在Button的click事件中得到焦点。。。 本来应该用TextBox1....

20060
来自专栏vue学习

微信小程序日常踩坑后的总结(猜测你也会遇到,持续更新。。。)

(1)图片需是本地图片或者是路径为https的网络图片; (2)使用网络图片要用wx.downloadFile( )下载,否则真机上无法显示图片; (3)w...

20120

扫码关注云+社区

领取腾讯云代金券