ie6下兼容问题

最小高度问题:overflow:hidden

在ie6、7下 li本身不浮动 内容浮动 li产生3像素间隙 解决:vertical-align:top; 二、当ie6下最小高度问题和li间隙问题共存时 给li加浮动

滤镜:标准浏览器【opacity:0.5】 ie6【filter:alpha(opacity=50)】

图片底部3像素问题:vertical-align:top;

padding是占位置的。

ie6下 子元素会撑开父级设置好的宽高  : 计算一定要正确,不要让内容的宽高,超出设置的宽高【子元素宽度超过父级宽度,放不下会折行,这样撑开了父级的高度】:

    在ie元素浮动,如果宽度需要内容撑开,就给里面的块元素都加浮动【<div><h1>left</h1></div>    <div><h1>right</h1></div>  div加浮动 h1也要加浮动 】因为在ie6下 内容会撑开父级,h1为块元素 撑开父级就占满整行了

在IE6、7下元素要通过浮动并在同一行,就给这行元素都加浮动

结构性问题:p标签不能包块标签

ie6下不支持点线 1px dotted 解决:切背景图 平铺

双边距bug:块元素浮动 加 左右margin 会产生双边距bug  解决 display:inline【转成内嵌元素】  :margin-right 右侧有双边距  margin-left 一行 左侧的第一个元素有双边距

  在ie6下解决margin传递要触发haslayout  其他浏览器解决 加overflow:hidden 或  元素或他的子元素 浮动

  在ie6下父级有边框的时候,子元素的margin消失 解决:触发父级的haslayout

当一行子元素 占有的宽度之和 和 父级相差超过3像素 或者 有一行不满行状态时 最后一行子元素的下margin在ie6下会失效。解决 暂无

ie6下文字溢出bug:子元素和父级元素的宽度相差小于3px的时候,两个浮动元素中间有注释或者内嵌元素时 会产生  解决:用div把注释和内嵌元素整个的包裹起来,或者设置子元素的宽度小于父级宽度3px+

定位问题bug

1. 当浮动元素 与 绝对定位元素 是同一行时,绝对定位元素会消失 解决:给定位元素加外面包div

2. 在ie6、7下,子元素有相对定位的话,父级的overflow包不住子元素【原因是定位增加了元素层级,解决办法是 给父级也加相对定位提高层级】 解决:给父级也加相对定位

3. 在ie6下 绝对定位元素的父级宽高是奇数的时候,元素的right值和bottom值会有一像素的偏差,解决:父级的宽高尽量是偶数

输入类型表单控件bug:

1. 在ie6、7下输入类型的表单控件上下各有一像素的间隙 解决 : 给input加浮动

2. 在ie6、7下输入类型的border:none;border依然有 解决 重新给input加背景

3. 在ie6、7下输入类型的表单控件 输入文字后 背景图片会跟着一起移动

div 文字超出隐藏 overflow:hidden;text-overflow:ellipsis;white-space:nowrap; 设置了容器宽度就可以了 很方便

原文地址:https://www.cnblogs.com/juexin/p/4438453.html