zoukankan      html  css  js  c++  java
  • [转载]IE6Bug之躲猫猫【2013/10/29】

      IE6的躲猫猫bug(peek-a-boo)bug,之所以起这个名称是因为在某些条件下文本看起来消失了,只有在重 新装载页面时才再度出现。
    出现这个bug的条件是:一个浮动元素后而跟着一些非浮动元素,然后是一个清理元素,所有这些元素都包含在一个设置了背景颜色或图像的你元素中。如果清理元素扩展了浮动元素,那么中间的非浮动元素看起来消失了,隐到了父元素的背景颜色或图像后面,只有在刷新页面时才重新出现。

      幸运的是,有许多方法可以解决这个bug。最容易的方法可能是去掉父元素上的背景颜色或图像。但是,这常常是不可行的。另一个方法是避免清理元素与浮动元素接触。如果窗口元素应用了特定的尺寸,那么这个bug似乎就不会出殃了。如果给窗口指定行高,这个bug也不会出现。最后,将浮动元素和容器元素的 position属性设置为relative也会减轻这个问题。

    如何找到猫猫?

    其实方法还蛮多的,如果仔细看网页源代码中关于CSS部分的注释,其实就已经可以找到一些答案。这里列出一些方案,供大家参考。只要采用下面方法的任意一种即可消灭bug

        1.指定最外面div容器(#holder)和浮动元素的'position: relative'
        2.去掉最外面div容器(#holder)的背景颜色(或者背景图片)
        3.给予最外面div容器(#holder)的 hasLayout
            3-1.明确的指定最外面div容器(#holder)的宽度(相对宽度和绝对宽带都可以)。
            3-2.缩小浮动div容器(#floater)的高度到一定程度
        3.不浮动div容器(#floater)
        4.不使用<div class="clear"><div>技术
    上面的方法只是理论上的,请根据实际需要采用不同的方法。另:这个bug在FireFox、safari、opera等浏览器下不会出现。因此本篇就没有截图。

  • 相关阅读:
    Java的三个基础排序算法(其余将在以后补充)
    Review PHP设计模式之——单例模式
    Mysql忘记密码,重新设置
    PHP加解密相关函数
    http返回状态代码及含义
    符合web标准的网页下拉菜单
    解决MySQL查询不区分大小写
    MYSQL Error 2006HY000:MySQL server has gone away的解决方案
    MySQL之count(*)与count(id)效率比较(转)
    如何让sudo命令不需要输入密码就可执行
  • 原文地址:https://www.cnblogs.com/zhengyingyan/p/3627224.html
Copyright © 2011-2022 走看看