Many interesting layouts are possible with CSS. As the share of IE6 in the world is declining, the compatibility situation is slowly improving, too. You can also make a lot of browsers behave better by putting proper headers on your HTML.
For some intended layout cases, the answer I get to questions like yours is often "change your design".
Some layouts can be achieved using tables to partition vertical and horizontal space. I always get flamed by the CSS purist zealots when I suggest this, but they usually don t have any better alternatives to offer.
That said, it s a good idea to use tables as little as possible, as this use doesn t correlate well with their intended meaning and purpose. Consider tables an emergency hack for those cases where CSS solutions would be a lot more hackish.