许多人开发人员对IE浏览器就比较的反感,这主要还是由于IE浏览器不同版本之间存在不同兼容性以及不支持网络标准的问题,当IE浏览器每推出一个版本,开发人员都要考虑代码对IE主流版本的兼容性。使得开发人员需要花费更多的时间在IE浏览器的兼容性上面。当然要解决这个问题并非一件易事,我们也看到微软正在朝这个方向做出努力,新版IE9浏览器已经对HTML5标准有了很好的支持。
当然IE浏览器的兼容性并非我们今天要讲的重点,这次是为大家介绍一个真正吓人的东西,用一段简单的HTML和CSS代码,既可以让任何版本的IE浏览器卡死。我们只需要简单地打开任意文本编辑器,将下面的代码复制进去,然后保存文件,例如SomeFilename.html。
IE Crasher
然后用
IE浏览器打开它,看看,它是不是已经失去响应崩溃了。
这个bug几乎存在于现在流行的所有IE版本,从IE6到刚刚发布的
IE9的第6个平台预览版。在
IE6中,该页面往往显示为空白,但是整个窗口都无法交互。在
IE8中,崩溃来得很彻底。而
IE9 Beta增强了坚固性,经过我的实测,这个页面又是会导致整个进程无响应,而有时IE9会提示你网页存在的问题,但是这都无法避免崩溃的现实。
事实上,
很早就有人发现过这个问题了,而且还有一个专门的网站(
http://crashie8.com/,请谨慎传播此链接)。除了IE以外的浏览器打开那个页面都不会有任何问题,但是IE却莫名其妙地崩溃。
当然,如果你细心的话,会发现上面的HTML代码中
闭合标签才能让这段代码符合规范。规范的代码就不会让IE崩溃了,这样看来似乎并不是IE的错。
但是,
当其他浏览器都能有很高的容错性时,IE没有,甚至到了IE9还是没有,这就是IE的悲剧了。
看来IE只是在支持标准方面改进还不够,需要对代码有更高的容错性。希望在IE9正式版发布之前,微软的开发人员功能看到这个问题。
标签:IE浏览器崩溃代码HTMLIE Web