zoukankan      html  css  js  c++  java
  • ie6下,莫名被复制出一段文字解决

    在IE6下使用浮动可能会出现文字重复的情况.

    在IE6下,浮动层之间有注释文字的话,之前那个浮动层的内容文字就有可能遭遇一个“隐形”的复制,但是代码里查看文字可并没有多出来。

    看个例子:

    HTML

    <div style="200px;">
        <div style="float:left;"></div>
        <!-- 如果是IE6,你将多看到一个“影”字 -->
        <div style="float:left; 200px">歌剧院的魅影</div>
    </div>

    用IE6看一下,你会发现莫名其妙的有文字重复

    问题原因以及解决方法:

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

    解决办法:
    1、不放置注释。最简单、最快捷的解决方法;
    2、注释不要放置于2个浮动的区块之间;
    3、将文字区块包含在新的<div></div>之间,如:<div style=”float:right;400px”><div>歌剧院的魅影</div></div>;
    4、去除文字区块的固定宽度,与3有相似之处;
    5、在后面加一个<br />或者空格;(不推荐)
    6、使用IE注释格式,如:<!–[if !IE]>Put your commentary in here…<![endif]–>
    7、给盒子加position:relative;属性



    引发这种BUG有几个条件
    1.是注释引起的,删除所有注释即可.
    2.hidden的input直接放在form下.
    3.display为none的div也有可能引发此bug.
    2,3可以通过外面再包一次DIV解决

  • 相关阅读:
    teamviewer被识别为商用的解决办法
    PLY调试笔记——待解决的问题
    python中的反射
    类的继承顺序
    面向对象---继承
    类成名和命名空间
    面向对象编程
    模块的初始
    装饰器
    列表推导式,生成器
  • 原文地址:https://www.cnblogs.com/wennice/p/7364759.html
Copyright © 2011-2022 走看看