当子 div 浮动时,父 div 会失去自动高度

Posted

技术标签:

【中文标题】当子 div 浮动时,父 div 会失去自动高度【英文标题】:When child divs are floated, parent divs lose auto-height 【发布时间】:2011-06-27 23:16:06 【问题描述】:

我有一个名为 main 的父 div。它里面有一堆子 div,我左右浮动。

当我完成浮动最后一个时,主 div 的高度完全消失了,我的页面布局被扔掉了。我给了它一个高度:100%;只是现在,但在大多数分辨率上它都太高了。我怎样才能将它保持在流动的高度,只需要包含元素的高度?

【问题讨论】:

【参考方案1】:

包含你的花车。

在名为 main 的 div 上添加 overflow:hidden;。那应该包含它。

【讨论】:

这里有一个关于使用溢出来处理这种情况的非常好的教程:webdesignerwall.com/tutorials/css-clearing-floats-with-overflow【参考方案2】:

您是否对浮动使用相对定位?

否则,您需要放入一个假 di​​v 以“保持打开”父 div。一旦一切都浮动,您将失去父 div 中高度的所有基础。 (里面什么都没有。)

【讨论】:

【参考方案3】:

插入“溢出:隐藏;”进入父 div 为我工作。

【讨论】:

以上是关于当子 div 浮动时,父 div 会失去自动高度的主要内容,如果未能解决你的问题,请参考以下文章

float浮动后,父级元素高度塌陷和遮盖问题

增加包含浮动嵌套 div 的父 div 的高度

子DIV浮动(float)后父DIV高度自动失效解决方案

如何让外层div自动适应内层div的高度和宽度

子div用了float浮动之后,如何撑开父元素,让父元素div自动适应高度的问题

清除浮动总结