9.2 该不该修复老版本 IE
我想再次重申以前的观点:通过打补丁的方式可以为老版本浏览器增加大多数HTML5和CSS3特性,但导致的结果是用户体验将严重依赖JavaScript,且可用性相较于不使用补丁有所减弱。毫无疑问,影响这个抉择最关键的因素是性能。因为我只是告诉你能这么做,并不代表你应该这么做!
此外,即使不使用补丁(我们稍后会谈谈这个话题),以我的经验,为了能让IE6和IE7(以及少量IE8和IE9)的页面渲染效果尽可能与现代标准浏览器类似,开发、测试和配置专属CSS代码所花费的时间,至少也和为现代浏览器提供渐进增强所花费的时间一样多——这很让人不爽!你和你的客户就准备这样用掉开发时间?
9.2.1 统计数据(再看看世界的变化)
我们来重温一下第1章说过的话题。我们注意到从2010年7月到2011年7月,全球移动浏览器的使用率(数据来自Global Stats网站http://gs.statcounter.com)不断上升,从2.86%涨至7.02%,而IE7的使用率则继续下跌,低至5.45%。2011年最后一个月的统计数据则更加令人警醒:IE7的使用率只剩了4%,IE6的使用率仅有1.78%。而与此同时移动浏览器的使用率则增长至8.04%。
另一个更加有趣的现象是截止2011年12月,Google Chrome(包括v15和v16)仅凭一己之力就占据了全球浏览器市场的25.7%,几乎与IE 6、7、8的总和(27.9%)持平。再加上其他现代浏览器的份额,如Safari(4.3%,不包括iOS版)和所有版本的Firefox(21.01%)以及各种移动浏览器,就不难发现为现代浏览器开发增强的用户体验,远比为那些老不死的玩意修补漏洞更有意义。至少对我来说是这样的!
结论就是:老弱的IE(6、7、8)的使用率正在不断减少,而现代浏览器(包括桌面版和移动版)的使用率则正在不断增加。
9.2.2 个人选择
目前我个人的态度是,针对全新制作的网站,要确保其在最新版本的IE(编写本书时最新版本是IE9)以及前一个版本(IE8)中效果完美。而针对老版本IE的布局和样式调整则由于需要额外的时间,所以另行商议。
这样做并不表示我完全不管IE7等老版本浏览器的基本可用性问题。我只是将有限的开发时间用于保证基本布局和功能正常,所以会忽略一些微小的对齐问题,以及一些由于浏览器不支持背景渐变、圆角、盒阴影新特性而导致的视觉差异问题。这些东西不影响可用性,多半都属于渐进增强的效果,我也没期望在老弱浏览器上看到什么效果。
在多个浏览器中测试网站
通常,标准浏览器如Chrome、Safari、Firefox在渲染使用HTML5和CSS3制作的网页时,效果基本一致。目前,大多数智能手机使用的也是和桌面版Safari、Chrome一样的Webkit内核,所以其渲染效果也满足你的期望。但是,不同版本的IE渲染效果差别较大,所以毫无疑问你需要在各版本的IE中测试一下网站效果(除非你默认就使用IE浏览器——哎哟,我得向老同志表示一下慰问)。我通常都使用IE Tester(http://www.mydebugbar.com/wiki/IETester/HomePage)这个免费的工具,利用它可以在一台机器上同时运行多个版本的IE。不过还有很多类似的替代软件,Smashing Magazine上的这篇文章对这类工具做了一个很好的总结:http://www.mashingmagazine.com/2011/08/07/a-dozen-cross-browser-testingtools/。
为了说明这种方法,在看完http://www.andthewinnerisnt.com网站在IE8中的效果之后,很明显我们得做点什么,好让网站基本正常。我们准备使用一个名为Modernizr的JavaScript工具和一个补丁来修补老版本IE的缺陷。我不太确定IE是否值得这么做,因为毕竟问题是因它而起的,但谁让我心肠软呢。在我们开始之前,先来了解一下Modernizr。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论