2012-04-27 97 views
2

我正在设计一个三列网站,我想在左栏中显示一些特定人员的信息以及他们的个人资料照片。同时,我正在使用HTML,并且已经成功地设计了左列的代码。 现在我正在尝试在左栏中划分一个分部,每个分部都会反映该人的姓名和帐户信息。
父div不会自动继承其子元素的高度

#column_left{ 
    display: inline; 
    float: left; 
    margin-left: 5px; 
} 
#col1 #sub-div{ 
    width:100%; 
    margin:auto; 
    border-top:1px #333 solid; 
    border-bottom:1px #333 solid; 
} 
#col1 #sub-div #div-img { float:left; display:inline; width: 40px; height: 40px; 
    } 
#col1 #sub-div #div-info { float:left; display:inline; width:auto; height:auto; padding: 2px; } 

现在的问题是,即使是两个div(DIV-IMG和DIV-信息)是根据分格,这样子DIV的高度必须根据其子的div的高度变化。但不幸的是,子div按照正确的顺序排列,但父div没有任何高度,除非在#sub-div的css代码中提及它。


有谁能告诉我为什么父母不继承子元素的高度? 我错了吗?

回答

2

您需要清除浮标。该行添加到您的左边div的底部,明白我的意思:

<div style="clear: both"></div> 

要了解为何需要花车结算,见this articleThe answers to this question提供更多清算解决方案。

+1

如果你解释了为什么你需要清除漂浮物 – 2012-04-28 00:05:08

+4

那么'overflow:auto'解决了我的问题。感谢您的链接和帮助 – ashutosh 2012-04-28 01:25:55

相关问题