Personally, the principal reason that I see tables as bad for layout is that they are inaccessible - they make it very hard for someone who is using assistive technology, such as a screen reader, to understand what is on your page.
Table based layouts are difficult to maintain because they mix content with display.
They are 10 years passed their use by date.
CSS provides a far superior and versatile means of implementing a design - just take a look at CSS Zen Garden - http://www.csszengarden.com/
- All of the designs at CSS Zen Garden are implemented in CSS - the underlying html is the same for each one (except for the css file pointed to).
There are probably other reasons that I'd mention from time to time that are not currently at the forefront of my consciousness.
- Michael Baker - HTML Tags Guide
- Reference and Tutorials
- Like voting, validate early, validate often - W3C HTML Validator
- W3C CSS Validator
- Wot? me cynical? no, its just if you vote, er, validate early, you have more chance of validating often.