我只是在学习为所有浏览器清除 float 的方法,并且有想法。
你认为为所有 div
元素全局定义这个有什么坏处吗?
div {
_zoom: 1; /* Clear floats for ie6. Does NOT validate. */
overflow: hidden; /* Clear floats for all other browsers. */
}
可能只有少数特殊情况需要覆盖上述两个规则。在我的脑海中,我想不出上述规则可能带来的任何问题,但也许有人知道得更多?
你怎么看?
编辑 1:
将 height: 100%;
更改为 _height: 1%;
。
编辑 2:
将 _height: 1%;
更改为 _zoom: 1;
。
这是我运行的版本。这是一个 excellent link到一篇描述新手所有清算方法的文章。
最佳答案
您可能会遇到的一个潜在问题是,当您 float 不是 divs
的元素时会发生什么情况? .你的风格涵盖<div />
标签,但没有别的所以你必须记住这一点,以防你在其他标签上使用 float 。
最好将这些样式应用于需要清除 float 的容器,而不是应用可能无法捕获所有内容的包罗万象。
还请记住 hidden
overflow 可能很难应用一些依赖于超出 div 标签的内容的样式。我能想到的几种情况是
- 元素边或 Angular 的样式,用于添加阴影或圆 Angular ,通常会溢出容器。
- 如果放置在
<div />
内,可能会超出容器边界的灯箱 - 放置在
<div />
中的自定义 javascript 工具提示秒。工具提示通常会从其容器中“弹出”,这可能会导致问题,具体取决于它们的设计方式。
如果您只对需要的元素而不是所有元素进行处理,这些问题会更容易解决。
关于css - 帮忙清除 float ,你觉得这个全局方法怎么样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1640085/