我確信之前已經問過這個問題,但我真的很想知道爲什麼這樣做是做什麼的,而不僅僅是答案(如果有的話)。直向前CSS佈局
我得到的是一個非常簡單的佈局,它由一個主包裝div,一個標題div,一個內容div和一個頁腳div組成。我遇到的問題是當我在內容div中放置多個方塊並將其位置設置爲絕對 - 以便將它們放在網格中以便它們跨越內容div的整個寬度。當我將這些div設置爲絕對值時,頁腳div跳轉並且不出現在坐在其父內容div中的div的網格下方。如果我將內容div的高度設置爲一個值,則頁腳div位於它應該在的位置,但如果我不設置它或將其設置爲自動(如我想要的那樣),則頁腳div有效地位於內容div下方。
我已經讀過,設置任何東西絕對把它從文檔的正常流程,但無論如何,我可以設置內容div,以便內容div的高度由內容設置(即網格的div),並且還要讓頁腳div始終位於content div下面?
這是一個模擬了http://jsfiddle.net/M4jyH/3/
這裏是我的代碼
#wrapper {
width: 400px;
height: auto;
border: 1px solid #000;
margin: 10px auto;
padding: 10px;
}
#header {
width: 100%;
height: 50px;
border: 1px solid #000;
}
#content {
position: relative;
width: 100%;
/*height:92px;*/
border: 1px solid #000;
margin: 10px 0px 0px 0px;
}
.box {
position: absolute;
width: 92px;
height: 92px;
background-color: #999;
}
#footer {
position: relative;
width: 100%;
height:92px;
border: 1px solid #000;
margin: 10px 0px 0px 0px;
}
<div id="wrapper">
<div id="header">header</div>
<div id="content">
<div class="box" style="top:0px; left:0px;"></div>
<div class="box" style="top:0px; left:102px;"></div>
<div class="box" style="top:0px; left:205px;"></div>
<div class="box" style="top:0px; left:308px;"></div>
</div>
<div id="footer">footer</div>
</div>
是否有一個原因,你使用絕對定位的內部divs? – Kosta