I caught up with one of my old lecturers and he was telling me that he was forbidding his current crop of students to use tables in their design, in fact he had contemplated not teaching them tables at all.
Now, there is strong debate about the use of tables as opposed to using positioning in CSS and some people are getting quite zealous in their arguments.
Myself I happen to like tables but I am open to using CSS to position as well and in the end it comes down to complexity of design and most importantly client demands.
Tables have an advantage over CSS in terms of older browser compatibility but that is becoming less of an issue as people upgrade to newer technologies. Using div tags and CSS is supposed to be more compliant across different platforms and browsers. It also makes for more streamline and easy to read code.
In practice, however, Internet Explorer causes problems with stylesheets as it does not comply fully to the W3 standards, especially in the areas of padding where it places the padding inside the box rather than outside the box as other browsers do.
These days I take the following approach with the sites that I build. Firstly I look at a way to do them using the CSS and div tag method and if that doesn’t meet the clients objectives then I use a mix of tables and CSS.
Compromise is a good start and as browsers become more compatible then I will increase the use of CSS.
I think that my old lecturer is flawed in his anti-table fight as there is still a need for them (and they ARE still W3 compliant) but he’s right that designers need to be flexible about up taking new standards.
For an example of a table free webpage, my hosting site sd.net.au is devoid of tables.