Нет никаких оснований для абсолютного положения чего-либо здесь ... это только приведет к головным болям.В общем, делайте абсолютную позицию только тогда, когда это абсолютно необходимо, что для меня почти исключительно в тех случаях, когда мне приходится плавать над чем-то другим.В противном случае все относительно чего-то другого, как по умолчанию.
Вот простая стратегия, чтобы сделать эту работу:
<div class="pagecontainer">
<div class="header">
Header Goes Here
</div>
<div class="bodycontainer">
<div class="floatleft">Leftbox</div>
<div class="floatleft">Rightbox</div>
<div class="clear"></div>
</div>
<div class="footer">
Footer Goes Here
</div>
</div>
Стиль следует:
.floatleft {
float: left;
otherstyle: here;
margin: 5px;
}
.clear {
clear:both;
}
Да, это абстрактно, так что вам придется настраивать его для ваших конкретных целей.
Ключом к тому, чтобы избежать наложений, является то, чтобы ваши div в контейнере body никогда не превышали размер родительского элемента bodycontainer (donне забывайте поля и, в некоторых случаях, отступы (глупый IE) учитываются до этого значения) и то, что оба всплывают влево с чистым плаванием после этого.
Если вы хотите сделать это страшно простым, используйте сетку, такую как 960.gs