經過幾個小時的工夫,我設法找到了解決問題的方法,所以問題不在於「如何」,而在於「爲什麼它像這樣工作」。這裏是我的精簡例如:CSS相對定位和填充
<div id="header">
<div id="header-element">header</div>
</div>
<div id="footer">footer</div>
CSS:
#header {
width: 100%;
position: relative;
padding-bottom: 5%;
}
#header-element {
position:absolute;
bottom: 0;
}
#footer {
position: relative;
margin-top: 5%;
}
和的jsfiddle - http://jsfiddle.net/H7jwm/3/。
我的問題是如何使用百分比定位那些相對定位的元素,第一個是文檔頂部的一個%,第二個是第一個。我已經通過padding-bottom
達到了第一個,而margin-top
達到了第二個,但我已經通過暴力解決了解決方案 - 試用每個遠程邏輯解決方案。現在,如果刪除填充,則第二個元素的margin-top
將成爲該元素和文檔頂部之間的邊界,而不是第一個元素,並且該第一個元素將「剩餘」空間放在頂部。
問題是爲什麼填充的工作原理是這樣的?或者,爲了更改它,填充如何與相對定位一起工作?
我不明白什麼是你設法避免的其他情況。也許另一個小提琴? – FelipeAls
我設法避免不能在文檔頂部放置'#header'一些%,並且'#header'放一些%的'#footer'。 – Zemljoradnik