heretic wrote:
As for a standards-based
page, agreeing that it is not a hard and fast rule that tables be
banned for layout, can you present some logical arguments against
this page - keeping strictly within the context of standards:
http://www.projectseven.com/csslab/zealotry/linear_basics.htm
I would pose the counter question: agreeing that it could have been
done easily enough in CSS, why use a table?
...
But, anyway, arguments against that example:
1) The standards say tables aren't for layout; this page uses a
table
for layout; it is not a standards-compliant page. Whether it
validates
or not, it is not true to the intention of the standard ... your
opinion may differ, but that's mine :)
Fair enough. Of course, my opinion differs in that I believe that
there is no "standard" mandating that a table not be used for layout.
2) Building in a table means the page won't display so well on a
small
screen device - it's wide, small screens are mostly narrow (sony psp
aside... :)). The side-by-side design also means it wouldn't lend
itself to a zoom layout either.
Small-screen devices have a completely different relevancy than many
people allow - or admit. But rather than get into a debate over the
futility of writing to a Twer of Babel mix of small-screen browsers, I
submit that standards-conformant small-screen user agents have no
problems linearizing a simple layout table (let's sic the WaSP on the
bad guys there). Remember, we're not talking about ugly, messy, nested
table layouts as done by Photoshop or Fireworks, we're talking clean,
simple, layout tables used to render stable columns.
3) The table means you are tied to that specific layout for the life
of the page (or you have to modify every single page to change the
layout). You can't use CSS to switch the navigation to the other
side
or any nifty tricks like that. Of course, that might not be an
issue -
but the example doesn't give a scenario so let's assume longevity
and
maintenance are a factor. At work I deal with a site with 20,000+
pages so these factors are big for us :)
Have a look at this page:
http://www.projectseven.com/csslab/zealotry/linear_basics_ssi.htm
4) Screen readers will hear the table before the content. Depending
on
their settings, users will be hearing "2-column page layout table"
instead of getting into the content. In the grand scheme of things,
not the end of the world. But it's not necessary.
The summary can be made briefer :-) But you're right, it's not the end
of the world, and JAWs and Co. will also be announcing lists and,
depending on your preferences, lots of other stuff.
Accepting the break from pure standards; it's not bad. I have
actually
recommended people use simple layout tables when other solutions
fail;
or as a transition stage from tables to CSS. Some specific things
like
vertical centring are still poorly supported in CSS (or more
accurately, poorly supported in browsers).
Agreed. And I hope you realize I'm not advocating the use of tables
for layout becoming the dominant force in page design :-) What I'm
trying to do is to let people know that if a certain projects and
clients could be more efficiently dealt with by using a simple, clean
table structure, they don't have to feel stupid, evil, or unclean.
There is alleged to be a small faction of intolerant, and somtimes
condescending, people within the standards/CSS community.
The example certainly doesn't prove that tables are ok for layout;
just that you can build something which does use a table for layout
and is still ok. To put it another way, if you were to put that in
production I wouldn't really care; there are far bigger problems to
tackle ;)
I'll conider that a philosophical victory ;-)
Al Sparber
PVII
http://www.projectseven.com
"Designing with CSS is sometimes like barreling down a crumbling
mountain road at 90 miles per hour secure in the knowledge that
repairs are scheduled for next Tuesday".
******************************************************
The discussion list for http://webstandardsgroup.org/
See http://webstandardsgroup.org/mail/guidelines.cfm
for some hints on posting to the list & getting help
******************************************************