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

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属性

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1 不同浏览器对浮动float和相邻不浮动对象的解析不同 IE会让相邻的也浮动起来,Chrome 和FF不会,他们的float对象不再占据空间,所以显示效果也不同。 Chrome 下 IE <style> body{ padding:0; margin:0;} #yi{ background:#0033FF; height:298px; width:298px; padding:1px; } #er{ background:#FF0000; width:30px; height:30px; float:left; } #er2{ background:#00FF00; width:30px; height:30px; float:left; } #san{ background:#00FFFF; width:230px; height:90px; border:1px #00FFFF solid;} </style> </head> <body> <div id="yi"> <div id="er"></div> <div id="er2"></div> <div id="san"></div> </div> </body> </html> --------------------------------------------------------------------------------------------- 1.关于background的背景图片 的 fixed固定定位 Firefox是支持background:fixed;定位的,IE6只能说是半支持,好吧,这么说吧,可能不太严谨,就是背景图片固定的效果似乎只在根结点起作用。举个很简单的例子: 先看这段css代码: body{background:url(../image/404.png) no-repeat fixed center center;} div{height:2000px;} HTML部分为: <body><div></div></body> 其结果是无论IE6还是火狐浏览器下,背景图片都是固定的死死的,不错。但是,一旦html标签带着background属性参合进来,事情就要发生转变了。问题代码: html{background:white;} body{background:url(../image/404.png) no-repeat fixed center center;} div{height:2000px;} 结果IE6下,背景不固定了,只看到背景图片随着滚动条上下移动而移动。演示页面 要解决这个问题呢,也是有办法的,就是将fixed属性转移到html标签上就可以了。即: html{background:white url(../image/404.png) no-repeat fixed center center;} div{height:2000px;} 就可以了。 2.关于height:100%; 要想高度百分比起作用,一般来说,要满足两个条件:其一,父标签有高度可寻,就是向上遍历父标签要找到一个定值高度(body,html另外讨论),如果途有个height为auto或是没有设置height属性,则高度百分比不起作用;其二,标签本身的属性,如果inline属性的标签

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值