Tables Make Me Cry

Today I had my heart broken. Not by a girl mind you, but by my boss. “How can this be?” you might ask. Today I was told our coding standard is changing to specify that we are only to use tables for all layout on any pages created.

CSS takes too long and if you want to change anything it moves everything else and causes problems. - El Capitan

Oh the horror! OK, so maybe it really isn’t an incredibly horrible thing, but I was a bit shocked, if at nothing else but the reasoning. I guess the only one I have to blame is myself. I had an opportunity to try to explain the benefits of using CSS over a strictly table based layout, and apparently I failed. Names shall be left out of this posting (I really do like my job and would like to keep it).

This conversation, of course, took place during a rushed meeting while we were trying to finalize some design decisions on my current project. I didn’t really have a chance to go into a lot of details comparing the two methods. My other failure, seems to have been my failure to really relate what I feel is really at the heart of designing with CSS. When talking about CSS you do have the usual ideals for following established web standards, ease of change, and lean markup. But to me, the biggest benefit for now and into the future is making the content make sense semantically. Yes, I know, even I am throwing out buzz words like the CSS lemming I am. But if you think about it, the idea makes sense. From the standpoint of developing the code, I know why each tag is there, and I know that if a tag is there it has a reason. From the standpoint of the end-user, no matter what device I decide to view the page with, the content makes sense and follows an order that I can actually follow. Now of course, using any modern web browser all the tables will look just fine. But if I try to browse to the site with my phone, it looks a bit funky. Of course, newer mobile web browsers are doing better jobs of rendering websites just like a desktop, but I would still prefer to have my mobile style sheet load and show me the data in a format that fits my screen correctly and makes reading easier.

So now, does all this make sense? Maybe it does for some, but it doesn’t fix my original problem. The guy that signs my checks doesn’t like CSS. In the end, for now, I will comply and start using tables for layout. Now I just have to try to remember how, and yet not get too comfy using tables for layout.

Oh, and before I forget. I don’t hate the table tag. It is a really great part of HTML. There is an incredibly large amount of tabular data that needs to be expressed, and tables are the way to do it. So I hope no one feels that I am anti-tables. I am just anti-tables when you try to use it to lay out an entire site. 1999 has come and passed, tables nested 5 deep should really stop now!