Div即父容器不根據(jù)內(nèi)容自適應(yīng)高度,我們看下面的代碼:
<div id="main">
<div id="content"></div>
</div>
當(dāng)Content內(nèi)容多時(shí),即使main設(shè)置了高度100%或auto。在不同瀏覽器下還是不能完好的自動(dòng)伸展。內(nèi)容的高度比較高了,但容器main的高度還是不能撐開(kāi)。
我們可以通過(guò)三種方法來(lái)解決這個(gè)問(wèn)題。
1增加一個(gè)清除浮動(dòng),讓父容器知道高度。請(qǐng)注意,清除浮動(dòng)的容器中有一個(gè)空格。
<div id="main">
<div id="content"></div>
<div style="font: 0px/0px sans-serif;clear: both;display: block"> </div>
</div>
2增加一個(gè)容器,在代碼中存在,但在視覺(jué)中不可見(jiàn)。
<div id="main">
<div id="content"></div>
<div style="height:1px; margin-top:-1px;clear: both;overflow:hidden;"></div>
</div>
3增加一個(gè)BR并設(shè)置樣式為clear:both。
<div id="main">
<div id="content"></div>
<br style="clear:both;" />
</div>
補(bǔ)充:
<div id="main">
<div id="content">
<p>demo1</p>
<p>demo2</p>
<p>demo3</p>
</div>
</div>
#main { border:1px solid #999999; background-color:#CCCCCC; height:100%; overflow:hidden;}
#content { float:left;}
以上三個(gè)方法都不是最好的解決方法,因?yàn)樵诔绦虼a觀念中是提倡盡量不要添加無(wú)意義的標(biāo)簽代碼
介紹我的解決方法是直接在最外層div加以下樣式
#main {
height:100%;
overflow:hidden;
}