`
ninggy
  • 浏览: 112920 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

ie6处理png透明图片问题

阅读更多

1 :iepngfix.htc

使用方法: 

1、下载脚本脚本,将其中的iepngfix.htcblank.gif解压缩到合适的目录内,.htcHtml Components,该文件需要在CSS中被调用;blank.gif是一个1×1像素的透明GIF图片,缺少该文件会使<img>标签插入的PNG图象显示为红色的叉烧包。

2、在iepngfix.htc中修改blank.gif的路径,var blankImg =‘blank.gif的正确路径,这是惟一一个需要修改的配置。

if (typeof blankImg == ‘undefined’) var blankImg = ‘blank.gif’;

3、在css中将需要使用透明PNG的元素与.htc文件关联。

例如:*{behavior: url(iepngfix.htc) }

轻松三步,IE6就能支持透明PNG图片了。

进阶使用:

1、在css中使用通配符“*”调用.htc脚本会对body内所有标签进行处理,加大客户端的资源消耗,延缓页面载入时间。我们可以细化CSS选择器针对某一个标签甚至是某个ID的元素来套用脚本以获得更好的用户体验。

例如:img,div{behavior: url(iepngfix.htc) }
div#header{behavior: url(iepngfix.htc)}

如果无法预见页面中哪些地方需要这个滤镜,还可以将behavior写入成class以便调用。

.pngsupport{behavior: url(iepngfix.htc)}

2、利用IE的条件注释使脚本只应用于IE6及以下版本,减少对IE7用户的影响。

<!--[if lte IE 6]>
*{behavior: url(iepngfix.htc)}
<![endif]-->

 

2:采用png8格式的图片

photoshop存储为web格式中选择png-8格式,透明度勾上,否则ie7就不能透明了,呵呵.png8 的文件比png24的存储空间小很多。

 

3IE7.js ie5,6

ie5,6 可以使用css2.0的语言,ie7;的效果一样,主要是标準化

IE8.js ie5,6,7

ie5,6,7 模拟IE8,使用上部分新的语言如CSS3.0

使用方式,在页面加如下JS:

IE7.js:

<!--[if lt IE 7]>
<script src="http://ie7-js.googlecode.com/svn/version/2.0(beta)/IE7.js" type="text/javascript"></script>
<![endif]-->

IE8.js:

<!--[if lt IE 8]>
<script src="http://ie7-js.googlecode.com/svn/version/2.0(beta)/IE8.js" type="text/javascript"></script>
<![endif]-->

注意事项:

  1. png图片必需要以-trans.png结尾,才能使用透明。如:shadow.png换成shadow-trans.png
  2. PNGTransparncyinIE方法在背景应用上只能做到background-image的效果, 背景重复坐标调用等暂时实现不了

http://blog.gulu77.com/demo/200809/test_ie7-js/

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics