At 11:37 PM 9/6/2005, Chris Blown wrote:
The mess that is tables - and here I mean a bunch of tables for layout -
can easily lead to broken markup, especially when you have to go back a
re-jig something, whether is easier than CSS/P doesn't matter, the fact
remains.
The problem is that browsers happily render busted table markup quite
well - they have to otherwise the web would just simply break - the up
and coming developer never finds out about the missing </td> or that
invalid attribute.
Hang on now. There's nothing about the use of table markup per se
that leads one to err more frequently. Yes, browsers tolerate
missing </td> and </tr> tags because the original HTML spec didn't
require them, but they'll also tolerate missing </li> and </p> tags
for the same reason. Layout tables are not hugely complex. A basic
table is only one degree more complicated than a list, and today we
routinely multiply-nest lists up the wazoo to create nav menus, site
maps, etc. I don't think it's the complexity of the markup that
makes the difference between sloppy table-based pages and tidy
semantic pages -- I suspect it's that developers who strive for
semantic markup care more about whether their tags are closed and
nested properly, even those that don't affect rendering, and use
tools to catch errors in markup.
When I was still using tables to lay out my pages I strove for valid
markup, but being a hand-coder I made my share of typos, sometimes
with table tags and sometimes with others. I keep my nose clean
today with the W3C HTML validator which I could be using to equal
effect if I were still forcing layout with tables. If I didn't have
the validator to lean on I'm sure I'd be making markup mistakes at
about the same rate, even after my shift to CSS layout.
Sloppy coders are sloppy coders, and the CSS arena has its fair
share. A correctly marked up table is valid XHTML even if it's being
used for layout, and there are tons of careful coders who still use
tables that way.
I sympathize with the desire to link table-based layout to sloppy
coding practices and it wouldn't surprise me if there were a
perceptible correlation, however I don't believe that one leads to
the other but rather that they're both more likely to co-occur in the
pre- or non-CSS web developer than in those who strive for
semantically meaningful markup. This may seem like a subtle
distinction, but I'm trying to make the point that using tables for
layout does not lead a developer to code more sloppily. There are
strong arguments against using tables for layout, but that's not one of them.
Regards,
Paul
******************************************************
The discussion list for http://webstandardsgroup.org/
See http://webstandardsgroup.org/mail/guidelines.cfm
for some hints on posting to the list & getting help
******************************************************