浅谈浏览器兼容性问题

兼容性问题是如何产生的

首先咱们看一则笑话,若是用枪来比喻各浏览器的话,其中chrome,ff等都是NB轰轰的枪。而IE?渣就算了,枪头还要反过来?这是闹哪样。html

再回归正题。2001年微软发布了XP和IE6,在当时是世界上标准执行得最高的浏览器,而且有不少私有技术和容错技术,使得顶峰市场份额达到98%。因而骄傲的微软不理睬W3C,W3C也把微软抛弃,两家分道扬镳越久,标准的相差就愈来愈远。遗留下的兼容性问题就交到了如今的前端开发者身上了。前端

说白一点,浏览器是一个(X)HTML/CSS/Javascript等语言的解释执行环境,h1能解释为标题,a能解释为链接,都是浏览器定义好的,这一份定义从一开始定制时有误差,最终会致使解释的结果就会差得很远,就产生了浏览器兼容性的问题。chrome

如何看待兼容性问题

w3c标准才是WEB发展的正确趋势,因此咱们要先熟悉 w3c标准,总体的网页应该以标准为准。浏览器

  1. 先在兼容w3c的浏览器上进行开发调试,尤为是HTML结构布局。
  2. 再结合一些常见兼容性积累,在开发阶段就解决IE678的怪异问题。
  3. 而后实地测试,保证产品/项目中不存在一些BUG。
  4. 最后阶段,咱们必需要在本身的积累中添加前一阶段遇到BUG的解决方法,用框架和文档去规范本身,快速解决咱们的未来会遇到的重复或相似问题。

IE6

全球IE6实时数据:http://www.ie6countdown.com 中国大陆一枝独秀。在实际项目中,要不要兼容IE6,兼容到哪一个程度。我以为这能够归结为一种项目/产品成本的考虑问题:若是兼容IE6,那么咱们的开发人力时间及其余成本要增长多少,回报有多少。鉴于国情,也很难一会儿咔嚓掉这个问题。就好像IC芯片的银行卡比磁条的要好用安全,一晚上之间全国全部磁条卡都不能用,ATM全换了,时间人力成本根本不可能,公众(例如我)也不会接受。再细分一点吧,各行业这个状况也不太同样,金融、gov和医疗行业恐怕是老大难了。甚至还见过有医院里面是用WIN2000+IE5.5。 对于此我只有两点意见: 1. IE6兼容得再好,效率确定没有V8引擎的chrome来得快,并且不少兼容是以效率为代价的。 2. 不要由于忙于兼容IE6,而不去理会HTML5/CSS5等新标准,IT人员老是要向前看的。安全

兼容性问题的思考

随着移动互联网的兴起,移动设备的兼容问题成为一种新的问题。当时项目实际遇到的问题是:双击与单击的问题。并且移动端的兼容问题最大的仍是分辨率问题,这个也不是某个厂家刻意为难人的,是客观存在的。普及语义化标签,能必定程度上解决这个问题;响应式布局,也是应此而兴起的。框架

因为时代是不停在发展的,因此兼容性问题确定会长期存在,咱们也没必要抱着一种厌倦的态度去看待;并且我以为这个问题的解决正是前端开发人员的一部分价值体现所在;最后,在解决了重复的问题以后,必定要有所概括,有所收获,令本身的价值提高。兼容,不只是指向后兼容,还包括对将来可能出现问题的处理。布局

参考

http://www.zhihu.com/question/21296251/answer/17798392测试

http://www.zhihu.com/question/20984284调试

相关文章
相关标签/搜索