Yesterday, Chris Heilmann threw together Should I use tables for layout?. It gave me a nice chuckle and I shared it on Twitter.
Not even 12 hours later, I stumbled across this "gem" on Twitter: Give Up and Use Tables.
Yes, I do have a sense of humor and, yes, I do appreciate that CSS can be a challenge, even for seasoned professionals.
But what the fuck is the big deal with learning to do one's job well using the industry standards!?
Lazy Bitches
Yeah, I said it.
Because that's what comes to my mind when I hear someone whining about CSS.
Or when I get a client who is miserable with a site that was sold to them for thousands of dollars and the entire thing is a mess of nested <table>
s.
Or when I see a visually beautiful site and then look under the hood and, again, nested <table>
s.
All that I can think of is a lazy designer or developer who cares more about getting the job done, than getting the job done well.
What Happened to Pride in One's Work?
I used to use <table>
s and making the switch to CSS-based layout was a challenge (to say the least).
But I took the time necessary to learn, because I want to be excellent at what I do. I care about the work I produce. I care about my clients and their web sites's users. I care about the web industry.
So I want to offer the best I can to my clients and colleagues, and do my damnedest to represent what is the best out there. Granted, this can be a daily struggle. But I wouldn't stay in my field if I didn't feel this way.
I'm interested in more than collecting a paycheck.
CSS Is Better …
Aside from taking pride in my work and striving for excellence, I believe CSS-based layout is better than <table>
s. Why?
- No More Tables | CSS Layout Techniques
- Why tables for layout is stupid: problems defined, solutions offered
- 13 Reasons Why CSS Is Superior to Tables in Website Design
… In Most Cases
<table>
s serve a purpose on the web. And anyone who tells you otherwise is as much of a douchebag as the person who uses <table>
s for layout.
<table>
is the right semantic element to use for data.
What kind of data? Tabular data such as bar charts, calendars, spreadsheets, etc.
And when you use a <table>
for data, keep accessibility in mind.
But that is it. Seriously.
It Doesn't Have to Be Difficult
Learning CSS, especially CSS-based layout, can be difficult.
But if you aren't interested in rising to that challenge, at least take advantage of some of the CSS frameworks out there. They have been tested across browsers, and you can modify them to suit your needs.
True, frameworks have their issues. But I think when compared to the issues with <table>
-based layout, frameworks are a better option.
Be a Craftsman
Or take a leap and learn your craft. There are more than enough resources available:
- Designing With Web Standards
- Bulletproof Web Design
- CSS Mastery
- Six Keys to Understanding CSS Layouts
- 12 Lessons for Those Afraid of CSS and Standards
- 10 reasons to learn and use web standards
- Practical CSS Layout Tips, Tricks & Techniques
Rant Over
For now.
I know that bitching and whining about this sort of stuff does little than soothe my own frustration … and temporarily at that.
I'm learning (thanks to some of my wonderful colleagues) that they key is to understand why people still design layouts with <table>
s. Not to assume (as I've already done in this article) that it is laziness or apathy.
If you care to explain why you choose <table>
s, please educate me. Because as much as I enjoyed that rant, I would much more enjoy an opportunity to understand, so that perhaps I can help.
♥ Share the Love