1. Home
  2. Computing & Technology
  3. Web Design / HTML
photo of Jennifer Kyrnin

Jennifer's Web Design / HTML Blog

By Jennifer Kyrnin, About.com Guide to Web Design / HTML since 1997

7 Reasons to Switch from Tables to CSS

Thursday January 18, 2007
Whenever I post an article about using CSS for page layout, I'm invariably flooded with comments explaining why (usually under no circumstances) will said person switch away from tables.
CSS
Image courtesy J Kyrnin
While I'm sure this article will provoke the same, I'm going to attempt to persuade you again to switch to CSS for layout. I've examined some of the most common reasons for why people won't switch. Perhaps your reason is in there, and you might be surprised at some of the truth behind CSS layouts.

Comments

January 18, 2007 at 8:52 am
(1) Gerald Reigle says:

I agree on using CSS for web design, but it is another tool, just like javascript or Perl. This site that I am maintaining right now is composed of tables and really sucks. The person who did this, used an Adobe program and everything was tables.
I still use tables as part of the web site as we have schedules to display, but I am getting away from tables as a major way of writing code for the rest of the site. I use Dreamweaver for most of the designing, but love the code to really design a page. We will have a new redesigned site up in a few months and as I am the only person here doing the code I can make changes in the pages as I go along.

January 18, 2007 at 10:04 am
(2) Dwight Blubaugh says:

OUCH! I got quoted!!! I guess I should have said that I was having problems getting things working right with every browser and using an out-of-date web design tool…

To be fair, Jennifer’s columns have pushed me to redesign my website using CSS. I had originally used FrontPage and designed it the way things were done years ago. It was familiar territory. I now have a website that is standards compliant and looks good in every browser. I only had to put a few hacks in the CSS to avoid some IE issues, but at least the hacks are in one maintainable spot. Thanks Jennifer for challenging us to use a better method.

January 18, 2007 at 11:43 am
(3) Bob Scott says:

No doubt you’ve heard them all already Jennifer, but I really think this one should have probably make the list. My argument would go something like this. “I’m not evaluated on that in my job performance, so I’m going to do it the fastest way I can get the project out the door”.

Yes, I know us tech-types don’t like to hear this kind of thing, but the truth is, a lot of us arean’t judged by committees’ standards, we’re judged by what is “good enough”. Should we go work somewhere else? Maybe. But that’s still the way of the world in a lot of places.

January 18, 2007 at 1:17 pm
(4) Ryan Reynolds says:

I’m actually working on an “all tables” site right now adding some admin tools (PHP/MySQL). The company didn’t want a redesign of their site, just some tools added. Tables make things so much more crowded (especially when they aren’t done right). I actually ended up rewriting the html for the site table-less because it was going to take me less time than dealing with the clunky table code.

I feel that once you know CSS well it takes the same amount of time (or less) to build a table free site and management later is much easier.

January 18, 2007 at 1:56 pm
(5) Jennifer Kyrnin says:

Bob: I’ve added your comment to the article (page 2) - should be live in an hour or so.

To be frank, I believe that it is up to individuals to make the changes and not rely on management to “evaluate” us into doing it. If you know that something is better but might take a bit longer the first time isn’t there some benefit in arguing it?

And believe me, I know how long this can take in an ossified corporation. On one site I worked on for four years, I spent the first three years arguing for accessibility. It was almost a daily fight. Then one day, we hired a new employee, and he suggested the same thing I was suggesting - and we were told “okay, why not?” It took 3 years, but we finally got the site to focus on accessibility.

Sure, the entire Web team then had to relearn a lot of things, and it took time to do it right from then on, but the end result was worth it. If we’d all just sat back saying “well, I never have time to learn that” the site would never have gotten AAA (Triple-A) certified.

I’m not saying your choice is not understandable - it happens all the time. I just wonder if you aren’t ultimately hurting yourself by abiding by it.

January 19, 2007 at 4:24 am
(6) Steve says:

““I’m not evaluated on that in my job performance, so I’m going to do it the fastest way I can get the project out the door”.” A few hours spent learning CSS will save months of effort coding tables as well as allowing you to do lots of things in your page that either tables can’t handle or where a couple of lines of html can replace a table with thousands of cells and look exactly the same. I switched to using CSS primarily because it is both faster to write and more flexible in what you can do with it. Once the company starts hiring people who know CSS then those who still insist on tables will have to adapt or perish.

January 19, 2007 at 5:40 am
(7) Bob Scott says:

Hi All, the point of my email may have been a bit “off topic” but can be applied in numerous situations including this one. Many times our careers are affected by things that are not directly related to “tech”. That’s where the saying, “It’s not what you know, it’s WHO you know” came from. My point really was that some people will stick with tables, based not on the preference on one over the other, but on their current work environment. If you work in an environment that values standards, then the “adapt or perish” argument is valid. If however your working in an environment where everyone else uses tables, no one knows CSS, and to them your code is not understood, it will not be welcomed.

January 19, 2007 at 5:56 am
(8) Bob Scott says:

I hate it that we can’t edit posts on here. I’m a very old geek but relatively new to web dev. so “on the record”, I never used tables in my life. I’m personally “CSS all the way!”. I was just pointing out in my original post an argument that I thought would be common.

January 19, 2007 at 3:24 pm
(9) Jennifer Kyrnin says:

Bob: you’re right - institutional inertia will result in sites that remain with old methods of doing things. That’s very true.

I just feel sad for designers/developers who feel that they don’t need to learn CSS because they’re working for a company like that. After all, companies go out of business, situations change, lay offs happen.

If your company requires you use tables, then you should use tables, but you shouldn’t refuse to learn CSS because of that. After all, if you look at the HTML that the About pages are written in, you won’t find a lot of CSS - they’re all table-based and probably ossified there, but I still recommend learning CSS, and trying to fight the inertia where you can.

January 22, 2007 at 10:28 am
(10) Web Diva says:

OK, ok, ok… You all have convinced me to convert.

In all fairness, I was working for a company that REFUSED to upgrade their content manager. And a coworker whose eyes would glaze over when the talk got too technical.

At least I convinced them to convert all font styling to a universal external CSS page.

What is really sad is that I was out on disability and they decided to outsourse the website and when the group came to showcase they all when enamoured with “liquid design” - sure enough - table=100%.

January 22, 2007 at 1:10 pm
(11) William says:

I do a lot of developement with Coldfusion. Tables seem like the most natural way to display query result of a database specially one with column labels. Can CSS do a better job?

January 22, 2007 at 4:55 pm
(12) Jennifer Kyrnin says:

William: It sounds like your query results would be tabular data, and so tables are the way to go. But the page navigation, site logo, and other information should be displayed with CSS positioning the elements - not a surrounding table.

February 3, 2007 at 11:42 pm
(13) maria says:

Let’s say you makes a site without tables but with CSS. This means your site is dependant on the CSS. How come some people say to never make a site where if you were to take out the CSS, the site will lose its layout. Who is right/wrong? CSS or tables or both?

Leave a Comment

Line and paragraph breaks are automatic. Some HTML allowed: <a href="" title="">, <b>, <i>, <strike>

Explore Web Design / HTML

More from About.com

  1. Home
  2. Computing & Technology
  3. Web Design / HTML

©2008 About.com, a part of The New York Times Company.

All rights reserved.