由于不同浏览器的内核不一致,导致各个浏览器对网页的解析产生差异。 html部分 1.低版本的浏览器无法识别新标签,主要体现在html5的新标签上, IE9和IE10已经兼容支持html5和css3.0,htmlshim框架可以让低于IE9的浏览器支持html5 最直接办法: (function(){ var element=['header','footer','article','aside','section','nav','menu','hgroup','details','dialog','figure','figcaption'], len=element.length; while(len--){ document.createElement(element[i]) } })(); 或者以IE特有的注释方式引入js文件: [if lte IE 9] <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> ![endif] 2.ul标签在IE6\IE7中,有个默认外边距,在IE8以上及其他浏览器中默认有16px上下外边距和40px左内边距 3.IE6下无法设置1px的行高,原因是其默认行高引起的 解决办法:为其设置overflow:hidden;或者 zoom:0.08或者line-height:1px; ** css部分** 1.块元素横向布局float后,横向的间距设置如果用margin实现,在ie6显示margin比设置的大,后面的块元素会被顶到下一行 解决办法:在float的标签样式控制中加入 display:inline;将其转化为行内属性