wow. practical css layout is packed with useful tricks and tips for table-less design:
“So now we have a bunch of nested DIVs. How is this any better than the nested TABLEs they replace? The answer lies in the way the tag was intended to be used. DIVs imply a logical, or structural grouping. Even when they are nested they remain structural markup. In our example we grouped images with their captions (first level), and then grouped these image/caption pairs with similar image/caption pairs (second level). These are both examples of structural grouping that is handled quite well by the DIV tag.
However, TABLEs imply a relationship between column and/or row headers, and the data in the TABLE cells. When we use them for layout, we lose the structural semantics of a TABLE. And we are back to using HTML for layout. Nesting TABLEs only compounds the problem.”