What’s so bad about using tables?
Difficult and annoying to change styles.
Positioning is difficult.
Not Search Engine Friendly.
Cannot transform the page to other markup languages easily.
Tables are slower in loading.
They are not flexible or free flowing on screen unlike layers.
Whats so good about CSS and Layers ?
Ease of use – css is far easier to learn and use rather than tables which have a complicated structure like.
Highly flexible layouts possible – css layouts are known for their flexibility. you can make the columns rows adjust as per the users screen resolution
Positioning is so powerful – layouts which were thought highly complex with native html are a breeze with css. You can position layers both relatively and absolutely
Least load time -lesser html tag elements mean lesser load times. tables have table td tr tags whereas in css only div tags are main players
Templating is made easy – you can have different templates stored in different css style sheets. Load the stylesheet as per template. This makes templating easier
Search engine friendly – since code and content are a bit separate from each other when using css, it might be considered SE friendly
some drawbacks of using css layers
Tables are easy to use for beginners. Although CSS is not that tough to learn and use. Its very advanced and very often developers dont make the best use of CSS.
Table Postitions are easy to control in a webpage.Although CSS can be used to control table positions, tables are still regarded as a easy and fast way of putting up content online.
Tables preserve formatting even when the text or data is copied on to a word processing application
Today’s Webdeveloper/Designer cant avoid css anymore due to growing demand for accessibility.
So my advice would be to make the best use of CSS wherever its apt and use tables only in areas where CSS layers cannot do the job