Sometimes I find it hard to believe that I am telling people the same thing after 10 years, but this week I was asked to do SEO on a large corporate site. To my surprise, when I started analyzing the site, I found the site was created with tables. Now anyone who is in the know with web standards, knows designing sites with tables is well, stupid. Why you may ask? there are lots of reason. first let me give you a little background on tables.
Tables had their place in web design back in the day. Actually table were never meant to be used as a complete website design element. 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.
Tables are used for tabular data, or should be. The goal/idea is to separate design from content. Using tables you are mixing your markup in with layout elements i.e. using tables to control the page display. This leads to more difficult to manage code, heavier pages and can affect accessibility. The preferred method is to use CSS to control your design and layout while keeping your HTML/xHTML lean and clean.
<div>
<p>This is body text…</p>
</div>
vs
<table>
<tr>
<td>This is body text…</td>
</tr>
</table>
id=”container” will call an ID from your external CSS style sheet and tell that div how to behave. Makes for much more effective presentation and such. Based off of the two examples you can immediately see the difference in the amount of markup required. Using external CSS also allows for instant site wide changes to any element just by modifying a single file. Also using divs/css you can have full control over screen and print output. Tables not so much.
Web standards can save your company money.
So why should a site not use tables and Use XHTML/CSS?
- make your pages load faster
- lower your hosting costs
- make your redesigns more efficient and less expensive
- help you maintain visual consistency throughout your sites
- get you better search engine results
- make your sites more accessible to all viewers and user agents
- and give you a competitive edge (that is, job security) as more of the world moves to using Web standards.
