解决IE5、IE6、IE7与W3C标准的冲突(IE7.js IE8.js)

分类:Web之旅 | 发布者:Tim | 发布日期: 2008-2-22 | 天气:不指定  | |
如果分别用IE5、IE6、IE7浏览同一个网页,将可能出现不一样的效果。
这是它们之间对CSS的解析选择器不一样或错误和个别bug所导致。为了解决这些错误和bug。
我们不得不找到一个能平衡于它们之间的解决方法。

如png透明问题在IE5、IE6下无法显示出其效果,我们可能会使用CSS hack或者引入外部JavaScript来实现。譬如前面我提到过用pngfix的那个方法就是调用外部JavaScript来解决在IE5、IE6下png透明问题。当然还有更多的方法。

而现在有种更加完美的方法能兼容IE5、IE6、IE7的CSS选择器解析不一样问题。那就是: ie7 - js

ie7 - js中是一个JavaScript库(解决IE与W3C标准的冲突的JS库),使微软的Internet Explorer的行为像一个Web标准兼容的浏览器,支持更多的W3C标准,支持CSS2、CSS3选择器。它修复了许多的HTML和CSS问题,并使得透明PNG在IE5、IE6下正确显示。

目前该ie7 - js版本: 2.0 beta 3

用法:
直接引用Google Code服务器上的js文件。

IE7.js
使IE5、IE6升级至兼容IE7
注释使Internet Explorer版本号低于IE7的IE浏览器载入该代码。

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


IE8.js
使IE5、IE6、IE7支持更多的W3C标准(修复了许多的HTML和CSS问题)。
注释使Internet Explorer版本号小于8的IE浏览器载入该代码,而其它符合标准的浏览器则会忽略该代码,并在IE8出来后不干扰其工作。

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


PNG
此脚本仅修复了图像命名为:*-trans.png
例:bg.png如需在ie6上实现透明效果,需改成bg-trans.png才能使ie7.js对png的透明效果修补生效。
遗憾的是,此方法透明的PNG图像不能平铺(重复)使用在背景上;也不能用在CSS “position”定位属性上 。

除了直接引用Google Code服务器上的js文件外,如果你愿意你也可以下载然后引入
2.0 beta 3下载地址页面:http://ie7-js.googlecode.com/svn/version/2.0(beta3)/
右击另存下载地址:IE7.jsIE8.js

演示:
http://ie7-js.googlecode.com/svn/test/index.html

本文出处为Azuresky原创,转载务必加入本声明!
文章出处:  本文为Azuresky Blog原创,转载请注明"作者"和"出处"及本声明!
Tags: ,

Norman Homepage
2008-2-27 10:14
貌似微软已经打算开始强制把IE7以下版本浏览器升级到IE7了以后就再也不会存在多版本浏览器共存的现象了。。。
Tim 回复于 2008-2-27 12:33
不是每一个互联网用户都像我们这样对IE6和IE7那样了解他们的区别。而且要尽量去考虑哪些极少部分电脑配置比较低的朋友,或许人家还在他的电脑上用IE5呢。估计全球升级到IE7最快也需要一年时间,可是那时可能还有IE6,不过那是另一群极少部分的人,但也是网页设计师需要考虑的(当然我还没到那样的程度),像我们现在不考虑IE5一样可以偷工减料对他们说:“遗憾,我不支持IE6”。所以不是微软强制,大家就会升级到IE6,还需要一部分人跟上脚步,但每个人的情况环境都不一样!
分页: 2/2 第一页 上页 1 2 最后页