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