Tables existed in HTML for one reason: To display tabular data. But then border="0" made it possible for designers to have a grid upon which to lay out images and text. Still the most dominant means of designing visually rich Web sites, the use of tables is now actually interfering with building a better, more accessible, flexible, and functional Web. Find out where the problems stem from, and learn solutions to create transitional or completely table-less layout.

In order to properly view sites using non-roman alphabets (such as the Bulgarian and Chinese translations of this site), you need to change your Language/Fonts preferences so that the Default Character set is "Universal Alphabet (UTF-8)". This will not affect any of the sites you normally view and will give you access to a whole new world of sites in languages you probably can't read anyway.

Updated layout: Responsive and using web fonts!

When Adam and I gave this presentation at the Seybold 365 conference in 2004, using CSS was still something fairly new. Browsers weren't nearly so good as they are now and most sites were still created using tables. Executives and coders alike still needed to be convinced of the wisdom of using web standards. That was the purpose of this presentation.

Obviously, a lot has changed in the eleven years since we had the temerity to call the prevailing method stupid. For example, there is no more Seybold and more people access the web on their phones than at a desk. What hasn’t changed is the humor we used to poke fun and provoke people into reconsidering the way they built their sites.

Click through using the nav at the bottom of each page to enjoy it in bite-sized nuggets, or jump right to the complete presentation, all-on-one page. You can also read the blog post I wrote about the steps I went through to make the pages (and their translations) responsive.

—Bill