Ja używam divów do tego i style. Zrobiłbym tak:
<div style="position:absolute; width:100%; height:100px;">Naglowek</div>
<div style="position:absolute; width:100%; top:100px; left:0px; right:0px; bottom:100px;">Czesc glowna</div>
<div style="position:absolute; width:100%; height:100px; bottom:0px;">Stopka</div>
Oczywiscie te 100px mozesz zamienic na dowolną wysokość logo i stopki. Powinno działać dobrze. U mnie działa. Nawet IE potrafi obsłużyć rozmieszczanie divów za pomocą CSSa.
Inaczej:
<div style="position:relative; width:100%; height:100px;">Naglowek</div>
<div style="position:relative; width:100%;">Czesc glowna</div>
<div style="position:relative; width:100%; height:100px;">Stopka</div>
To w przypadku gdyby strona zajmowała więcej niż okno i potrzebne scrollowanie.