Tables used to be the standard for building and laying out websites. In the 1990’s and early 2000’s, css was not widely supported in browsers, so using tables for layout became a popular way to ensure cross-browser consistency. However, as browsers progressed and css became more widely supported, separating the layout from the content proved to have all sorts of advantages. Today, most websites use css to handle the layout of their site while leaving the content in the html. Yet, there are some that are left in the past because they have either failed to update their website in the past 8 years or their website developer never bothered to learn css. Either way, using tables for layout is a big “no no”. Here’s why:
- Tables are slow loading – Tables require more code than css, which means more bytes, which means slower loading time.
- Tables are not accessible – Because tables fuse together content and layout, screen readers have to read through all of your navigation, your header, etc before getting to the relevant content of the page. Equate this to having to re-read the table of contents each time you turn the page in your novel and you’ll know that it’s highly annoying. So much so, that the Wc3 has decided that table based layouts aren’t accessible.
- Tables make a redesign much harder – Because tables fuse content and code together, changing content or adding a new button, etc is a major undertaking. On the flip side, css keeps your content and code seperate which means that your layout is flexible and much easier to update or change.
- Tables are bad for Search Engine Optimization – In the same vein as screen readers, search engine spiders crawl your site to pull out the relevant content. Tables essentially act like a big stop sign for these spiders, in part because they are re-reading the same thing over and over (navigation, header, etc) and partially because tables take longer to load. Search engines are in the business of sending their clients (search engine users) to the best possible sites, and sites that aren’t accessible or take too long to load are a bad recommendation.
To check if you site is laid out in tables, follow these steps:
- Visit your website
- Right click and select “View Page Source”
- If you see “<Table>” in the few lines following the “<Body>” tag – it’s probably a good time to consider a redesign or at least a re-coding of your site.
Keep in mind that Tables aren’t always bad and are a great solution for tabular based information. Essentially, if your info belongs in an excel spreadsheet, it is probably safe to use tables to display it.

