Jag tänkte slänga ihop ett eget exempel men Googlade lite snabbt och hittade:
http://www.xs4all.nl/~peterned/examples/cs...csslayout1.html
Det redogör på ett ungefär den lösningen jag tänker föreslå: Definiera Height 100% för alla Parent-element (html, body, div#container, etc) och min-height för själva child-elementet. Eftersom IE tolkar height som min-height matas det explicit med height-attributet. Sedan placeras footer och header ut och nja, det exemplet redogör för det mesta.
Och som svar till funtrix: Personligen skulle jag använda faux columns. Mestadels därför att jag upplever det som den mest korrekta lösningen, många andra lösningar vållar fortfarande problem pg a stackars IE. Om du dock vill ha en CSS-baserad lösning så rekommenderar jag det här, ett ambitiöst projekt att hitta en korrekt lösning på (nästan) alla problem:
http://www.positioniseverything.net/articl.../onetruelayout/
Om du inte är nöjd med det finns Javascript, som hjälp på traven kommer första resultatet från min sökning på Google:
http://www.projectseven.com/tutorials/css/...lumns/index.htm