前端人员痛苦的事情就是调整网页在不同浏览器下的效果,先要找出市场占有率较大的几款浏览器,然后每次写好前端代码,都要去各个浏览器分别测试一下有没有问题,如果有,就要针对修改,直至所有浏览器都完美,近几年移动设备流行起来,许多人在手机上上网,这就要求手机的界面效果也要保持一致不能出错,手机的屏幕及分辨率种类远远大于电脑,这对前端人员的要求更高了。
自己电脑上看到的,并不一定也是别人看到的,所以要做兼容性测试,并告知客户反馈兼容性问题。之所以有兼容性问题,因为不同浏览器使用内核及所支持的HTML(标准通用标记语言下的一个应用)等网页语言标准不同;以及用户客户端的环境不同(如分辨率不同)造成的显示效果不能达到理想效果。常见的问题就是网页元素位置混乱,错位。
对于一般用户来说应该用ie8兼容模式浏览网页, 而不应该用ie9或ie10渲染模式. 很多用户安装ie10后发生很多网页显示错乱, 就是兼容性的原因, 因为ie10默认的渲染模式是ie10. 此时应该将其改为ie7渲染模式。为什么用ie6/7渲染模式的原因如下,中国所有网页肯定都支持ie, 支持ie就是支持ie内核的所有浏览器. 但并不一定支持chrome, firefox, 双核浏览器的高速模式, 原因很简单, 网页开发人员没有那么多时间和精力去兼容及测试那么多浏览器, 开发人员能让网页在ie下正常工作已经不错了, 就这还老得加班呢,还有很多新需求和bug,测试人员还要去改,渲染模式和网页打开速度几乎没有关系, 用户感觉不到.
对于网站开发者来说,目前暂没有统一的能解决这样的工具,普遍的解决办法就是不断的在各浏览器间调试网页显示效果,通过对css样式控制以及通过脚本判断并赋予不同浏览器的解析标准。如果所要实现的效果可以使用框架,那么还有另一个解决办法是在开发过程中使用当前比较流行的JS,CSS框架,如jQuery,YUI等等,因为这些框架无论是底层的还是应用层的一般都已经做好了浏览器兼容,所以可以放心使用。除此之外,CSS提供了很多hack接口可供使用,hack既可以实现跨浏览器的兼容,也可以实现同一浏览器不同版本的兼容。