IE6中一些样式Bug及其解决方法

来源:互联网 发布:溢价域名 编辑:程序博客网 时间:2024/06/13 19:22

1. IE6双边距Bug

当页面上的某个元素使用float:left浮动时,则设置margin后的实际效果会变成2倍。例如在IE6中设置float: left; margin-left: 10px;,则实际得到的margin-left是20px。

解决方法:加入display: inline


2. IE6中奇数宽高的Bug

IE6中奇数的宽高显示大小与偶数宽高显示大小存在一定不同。例如设置width:101px; 则实际的width为100.99px,而当设置为100px时,实际的则为100px。

解决方法:尽量将外部定位的div宽高写成偶数。


3. IE6中空元素的高度Bug

如果一个元素中没有任何内容,当样式中为该元素设置了0~19px之间的高度时,则在IE6中高度始终未19px;


4. 重复文字的Bug

在某些复杂的排版中,有时候浮动元素的最后一些字符会出现在clear清除元素的下面。

解决方法:

(1)确保元素都带有display: inline;

(2)在最后一个元素上使用margin-right:-3px;

(3)在浮动元素的最后一个条目加上条件注释<!-[if !IE]>xxx<![endif]->

(4)在容器的最后元素使用一个空白的div,为整个div指定不超过容器的宽度


5. IE6中z-index失效

如果元素的腹肌元素设置的z-index为1,那么其子级元素再设置z-index时会失效,它会继承父级元素的设置,造成这些层级调整上的Bug。


6. IE6中没有min

在firefox中元素的内容无法成大div,因此可以设置min-height同时将height设置为auto让它自动撑大。

但是在IE6中,元素会自动撑大div,而且不识别min属性

原创粉丝点击