I spent a brief time on the tableless design wagon… the craze that swept through some time ago where if your web site design included tables you were waving a giant “old fart from the dark ages” flag. Everything shifted to this huge push for tableless design where you accomplished all layouts with just CSS and DIV tags. I jumped on the bandwagon, I rode the rough trail, and I got off at the next stop. To me the exclusiveness of never using a table is insane. In some instances you can spend 4 times the time trying to get a page to look and flow correctly with CSS and DIV tags only than you can if you just used tables. I am not saying placing tables all over the page and tables within tables within tables is the way to go, but a table here and there doesn’t hurt anything.
Some diehards say tables should only be used for data display and never for layout. Hoorah you are right, they are for data display. But they work pretty nifty for web design too, and why not? In today’s world time is money and quite frankly the client doesn’t give care if you mastered their web site design using CSS and DIV tags only.
I believe in a nice marriage of the two. Do what you can with CSS and DIV tags and use tables where useful and appropriate. They are both great tools and provide ways to do just about whatever you need to do design wise.
This table rant was inspired by a post from James Jackson where he talks about using CSS to enhance your table data display. It is a good article.