My advice is, don't believe the CSS hype. I am officially starting a CSS rebellion and will no longer waste my time trying to use CSS to create the actual layout of a page. I now use CSS only for styling individual elements, not to define their position or vertical/horizontal dimensions. After very extensive testing and research (not to mention 10+ years of experience) I have switched back to using tables instead of wasting my life with tedious CSS hacks that may or may not work for a particular layout. No matter how many css hacks you employ, some browsers (usually Explorer and Opera) will still have issues unless you use one of the 3 known layouts that actually work in all browsers. Go ahead, try to put together a multi-column design that will expand vertically to fit its contents, I tripple-dog-dare you (and if you succeed I'll congratulate you on wasting hours trying to accomplish something that would take about a minute to do with tables). At this stage of browser development there's simply no excuse for the sorry state of CSS. Here's my profanity-laden take on the subject:
http://electrongun.blogspot.com/2006...er-makers.html
I urge you all to join me in rebelling against CSS until the standards committees and the browser makers can get their act together.