I was the master of tables once upon a time … give me a design and I could reproduce with some healthy chopping in photoshop and COLSPAN/ROWSPANS ... I could do no wrong … I was invincible …
I then stopped web programming for a few years, and then when I came back in 2003, I was ready to start hacking away again … surely my skills at tables weren’t yet obsolete… but then I started reading up on CSS and I realized … CSS was more than getting rid of the <font> tag … I was wrong it wasn’t going to be as simple as I expected… i was moving from the highly predictable and tested <TABLE> world to unpredictable CSS...
Was I wrong using tables back in the day? Semantically yes, but seriously speaking there was no other way … it just had to be done.
So I slowly but surely read and got up to speed, I started out lightly with some hybrid layouts ... felt dirty … but time is of essence in the working world… but soon i was fairly up to speed with the wealth of people and resources helping out …. and then it happened … i turned anti tables ...
oh how i loathed tables, and turned my nose up at anyone who used them…
So I moved from hacking photoshop files to tables, into adding in hacks into css … but I separated content from from design … all was right in the world… surely I had to add extra markup for certain designs that caused some browsers to fail… oh the stupid box model
fwiw …. i really do prefer ie’s view of the box model, but bad bad them for not following the spec…
When i did my own design… I was able to predict what would require a hack and designed around it, but when you don’t do your own designs, then sometimes you have to… I still stray away from those comment type hacks that take advantage of browser bugs…
So… I was anti table … then on one project (can’t remember which one) ... I remember pulling my hair out … and then someone who came by … and said why are you doing that use tables… I was about to come back with my clever semantic argument … then i realized ... what i was coding indeed could be considered a table … after all it was called a TABLE OF CONTENTS...
it then dawned on me … i was so anti table i failed to see when something was a table.
From what I have seen, no one uses tables for comments, but it doesn’t mean I am wrong to do it … it’s tabular data … “COMMENT” / “WHO SAID IT AND WHEN” ... in terms of accessibility this makes complete sense… just make sure when you use tables add <TH>‘s … I have them … they are just hidden with css, visually it’s easy to see the association… but screen readers read them…
Now I can see someone misinterpreting or taking this to another level not intended … sure a multi column layout could be conceived as a table … like my internal pages “ARTICLE CONTENT” / “COMMENTS” ... I am not advocating nor will I do that, but if you did do it make sure to add <TH>‘s ... but seriously a table should have more than one big row…
Here is an excellent article, on the same subject, and more in depth of how to use tables: Bring on the tables
All I am saying … sometimes things are tables, so code them as <TABLES>‘s…