Moving away from table-based web design

Back in 1997 typographer David Siegel changed the way web designers made websites; some would say he even changed the web itself. He wrote about an emerging technique for pixel-perfect designs. The technique involved combining the <table> tag with sliced images and spacer gif images to achieve a design that was all but impossible back then. Web designers were overjoyed with this new found wisdom. They could now create web page designs that were as graphically rich and fluid as their traditional print media cousins. But as happy as the designers around the world were, David began to recognize the implications of his discovery.
In David’s “The Web Is Ruined and I Ruined It” he writes:

I ruined the Web by mixing chocolate and peanut butter so they could never become unmixed. I committed the hangable offense of mixing structure with presentation, and in HTML and SGML circles, that’s a big no-no. The reason the HTML purists never carried out their threats is not that they’re against violence, it’s that they know that if they kill me, someone else will rise to take my place. It seems that structure and presentation have been mixed forever, and the Web is in the fast lane of the road to Hell. Fortunately, nothing on the Web is what it seems, and forever lasts only about six months.

But what’s all the fuss about? To many people using the web this will never make any difference, but to some it will make all the difference. There’s a not-so-unspoken rule that content and structure should always be independent from visual presentation. Using tables for your layout is like framing your house with PVC pipe. The PVC pipe serves an important role in your home’s plumbing system but it never signed up for the responsibility of providing stability for your entire house! Table-based layouts, while effective, can’t stand up to the various methods by which your website will be viewed. It’ll fall flat.

So based on what I’ve written so far you’d probably assume that I never use a <table> to structure my designs visually, right? You’d be wrong. As much as I understand the problem and what the solution is, sometimes it’s not practical to cling to this particular best practice. The reality is that because there are so many browsers (and versions of those browsers) out there it’s difficult to craft a solution that’s both semantically and visually solid. Some CSS attributes don’t render correctly on all browsers, some don’t render at all! So, in the interest of having a design that renders as it should across all browsers I use a method that works… almost always… tables.

Now before you web purists fire up your witch hunt let me stress that about 98% of my web creations are css-based designs with almost no inappropriate table use. However, there are some times when I’m just not comfortable releasing a design into the wild that renders so inconsistently across the vast array of browsers out there. I just can’t have that. Sure, some would argue that the content is what’s truly important and the design should be secondary. But try telling that to your next client when they call in saying that the website looks broken on Internet Explorer 4.0.
So, until the browser makers of the world can get on the same page and produce browsers that render CSS elements consistently I fear table-based layout is here to stay.


Posted

in

, ,

by

Comments

One response to “Moving away from table-based web design”

  1. Barry Pike Avatar

    I understand the gist of this, in a broad overarching sense, and I wish I understood all of it.
    But, more importantly, I am glad there are people like you who do understand it so the rest of us can surf and blog away in cheerful ignorance. 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *