我就說說自己的看法啊,不對的請指正。
浏覽器就是2大派系,一個是其他浏覽器,一個是IE(這TM就是個異端)。
浏覽器的區別主要就是4個部分了
1.對於各種元素margin和padding的默認值不一樣。
2.ie和其他浏覽器的css盒模型不一樣,ie的width和height包括了padding和border,而其他浏覽器的css盒模型才是標准的盒模型,height和width是指content的寬和高。
3.對於css3的支持程度不一樣。
4.對於ES5和ES6的支持程度不一樣。
5.html5的標簽。
6.css3的媒體查詢
對應解決方法:
1.引入normalize.css,可以統一各種元素的margin和padding等屬性。
2.css3的一個屬性box-sizing可以定義該元素以哪種盒模型進行渲染。content-box為標准盒模型,border-box為IE的盒模型。
3.引入PIE.htc或者其他的能夠使IE兼容css3的文件,但是都有局限性,無法完全兼容css3的所有特性,具體的請自行度娘。
4.IE8是部分支持es5的,可以引入es5-shim.js。ps:不小心看到了es5-sham查了下他們的區別。es5-shim就是實現的是原生的ES5,而sham中實現了一些新的API。這樣就可以使用es6編程再利用babel編譯了。
5.引入html5shiv.js,可以讓ie支持html5的標簽。
6.可以引入Respond.js,使ie可以使用媒體查詢,實現響應式開發。
以上這篇淺談浏覽器的兼容性(必看篇)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。
原文地址:http://www.cnblogs.com/wangwei1314/archive/2016/07/24/5701537.html