Web前端浏览器兼容性总结

1.IE6中,子级的宽度会撑开父级设置好的宽度

温馨提示:盒模型的计算一定要精确,否则IE浏览器可能会显示不同

2.IE6中,元素浮动,如果宽度需要内容撑开,需要给里面的块元素都添加浮动才可以

3.在IE6/7下元素要通过浮动排在同一排,都需要给各行都加浮动

4.注意p标签中不要添加块元素标签

5.在IE6下元素的高度如果小于19px的时候会被当成19px来处理

解决方法就是overflow:hidden;

6.在IE6中不支持1px的点线(dotted)边框样式

解决方法:切背景平铺

7.在IE下大部分兼容性都是因为haslayout属性的触发问题,尽量触发haslayout属性可以减少很多IE下的兼容问题。

在IE下父级有边框的时候,子元素的margin值会失效

解决方法:触发父级的haslayout属性

8.IE6下双边距的bug,在IE6下,块元素有浮动有横向的margin的值得时候,横向的margin的值会扩大两倍

9.margin-left 一行中左侧的第一个元素有双边距(右边同理)处理方式display:inline

10.IE6/7下,li本身没有浮动,li里面的内容有浮动,li下会产生一个间隙

解决方法:①给li加浮动②给li加vertical:top

11.在IE6下最小高度的bug,和li的间隙问题共存的时候,给li加浮动,vertical-align不好使

12.当一行子级元素宽度之和和父级的宽度相差超过3px,或者子级元素不满行的情况的时候,最后一行的子级元素的margin-bottom会失效

13.在IE6下的文字溢出bug子元素的宽度和父级的宽度如果相差小于3px的时候,两个浮动元素中间有注释或者内联元素,就会出现文字溢出,内联元素越多,溢出越多

解决办法:用div把注释或者内联元素包起来

14.在IE6下当浮动元素和绝对定位元素是兄弟关系的时候,绝对定位元素失效

解决方法:不让浮动元素和绝对元素时兄弟关系,用div或者其他标签把a标签包起来

15.在IE6/7下,子级元素有相对定位,父级overflow包不住子级元素

解决方法:给父级也加相对定位

16.在IE6下,如果绝对定位的父级宽高是奇数的时候,子级元素的right和bottom值会有1px的偏差(无法修复,只有注意避免)

17.IE6/7中position:fixed无法实现,只有使用js固定定位

18.IE6/7/8中透明度opacity:0.5设置无法实现应加上filter:alpha(opacity=50);

19.在IE6/7下输入型的表单标签控件上下会有1px的间隙。

解决方法:给input加浮动

20.IE6/7/8中

<!--[if ie]><![endif]-->条件注释语句中的内容会显示

使用方法:兼容ie浏览器的引入文档可以写在这个标注语句中

21.css 代码中

    \9 IE10之前的版本解析的代码  例如:background:yellow\9

    +或者* 标识ie7包括7之前的IE浏览器  例如:+background:black

    _表示 ie6包括6之前的ie浏览器  例如:_background:pink

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,815评论 1 92
  • 本文转发自github, 原文地址 前端开发知识点: 作为一名前端工程师,无论工作年头长短都应该掌握的知识点: 此...
    XDUZ阅读 629评论 0 8
  • 断断续续的在开发过程中收集了好多的bug以及其解决的办法,都在这个文章里面记录下来了!希望以后解决类似问题的时候能...
    卡卡西哥哥阅读 606评论 0 1
  • -1- 复习时在化学书某一页的一个小角落发现了我不愿看到却烂熟于心的三个字 初恋的名字 不知道是哪天上课犯困或者思...
    海与阅读 477评论 4 9