IE6中莫名其妙地多出一行文字:IE6注释BUG

IE6中,一行文本被自动地复制一部分,并显示在其下边。

出现这个问题的原因:

大部分是由注释造成文字溢出,属于IE6的BUG,溢出文字的字数=注释的条数*2-1,这里的字数在中 文或英文数字时都成立。注释坐在位置与溢出位置、区块的浮动以及文字区块的固定宽度有必然联系。

通常,一个容器包含2两个具有“float”样式的子容器。 第二个容器的宽度大于父容器的宽度,或者父容器宽度减去第二个容器宽度的值小于3。 在第二个容器前存在注释(这也是为什么此bug也叫做“IE6注释bug”的原因)。

这是注释bug,经典的iebug。

  说明:注释造成文字溢出是IE的BUG,注释造成文字溢出与其位置有关,注释造成文字溢出与文字区块的固定宽度有关,溢出文字的字数=注释的条数*2-1,这里的字数在中文或英文数字时都成立。

  当溢出的文字字数大于文本的字数时,文字区块将会消失。

  解决方法:

  1、不放置注释。最简单、最快捷的解决方法,嘿嘿……

   另一解决方法是:
将注释
<!--头部文件-->
改写成
<!--[if !IE]>头部文件<![endif]-->
这样的形式。

  2、注释不要放置于2个浮动的区块之间。

  3、将文字区块包含在新的<div></div>之间,如:<divstyle="float:right; width:400px"><div>↓这就是多出来的那只猪</div></div>。

  4、去除文字区块的固定宽度,与3有相似之处。

  5、在浮动之后的最后一个DIV后面再多一个DIV,什么属性都不需要加,只要一句clear:both;也可.在需要兼容多种浏览器的情况下,可加上属性font-size:0; height:0; overflow:hidden;如:
<div style="clear:both; font-size:0; height:0; overflow:hidden"></div>

       6、给盒子加position:relative;属性

<!--EndFragment-->
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值