Under the <table>

Richard McManus comments on the now legendary HTML tables vs. CSS layout debate. Web designers should use CSS layouts instead of hacking tables together. Sure, tables are easier to understand and set up, but CSS is easier to change, easier to migrate to new formats (think portable devices), and makes more logical sense.

TABLE is an ugly hack, back when there was no real way to display column layouts on the web. Their intuitive nature is probably why they replaced frames as the way to place content adjacent to each other.

So really, both camps are right. Either implementation is transparent to the user, so they shouldn’t care. But developers should care. CSS will make your jobs easier.

There are some reasons for sticking to tables, however:

  • support for Netscape 4.7: Sadly, it’s still around, especially inside companies.
  • workaround for IE’s multiple CSS bugs
  • you are too lazy/too busy to concentrate on laying out a CSS layout, and this web job is just a one-time deal.