Mon. Feb 18, 2002
Hurdles CSS Must Overcome
Hurdles CSS Must Overcome – The debate continues as Dave lists 5 things he thinks are holding back the adoption of CSS. Rebutting this could get long and geeky, so I’ll move it off the front page, for those who just came by for kitty pix.
Dave’s list of Five Flaws:
1. Installed base.
Bad terminology. CSS’s ”installed base” is around 98% among my site visitors, meaning, their browser understands CSS in some manner. What did you really mean?
”Millions of people know how to do basic HTML. They don’t know CSS. People who know how to layout with tables in all likelihood will continue to do so.”
OK. Millions of people know how to use Front Page. They don’t know HTML. People who know how to point and click their way to a page in all likelihood will continue to do so. There are apps that flourish because they allow people to publish ”without any knowledge of HTML, FTP, or graphic design.”
It’s irrelevant. Those whose primary concern is ease of publishing don’t need to worry about CSS. Or HTML. Those who make their publishing apps do need to worry about it (which in this case would pair Dave and Microsoft … sorry, couldn’t resist).
But Dave, as a very independent contractor, you’re missing the boat here. If someone needs CSS, and can’t/won’t learn it, or wants something more complex than they can achieve, they can hire a professional! No one human can master all things. And I would argue no one computer user, no matter how talented, can learn to write every language. There are times you have to pay a pro. I’d love to be able to write my own imaging app, but I’m happy Adobe lets me pay them to use theirs. And though I can hack together some simple Javascript, anything complex is way over my head, in a browser-crashing manner. But I don’t blame Javascript for being too complex. The limitation is mine.
Individuals who place content on the web, and are serious about it, have learned basic HTML, and hopefully have enough sense to know it’s not a one-stop education. HTML has evolved considerably over time, with an attendant learning curve, and now there’s a new future of markup languages; XML, XHTML, and their partner, CSS. The learning curve is little different, we’ve just moved into a new alphabet. The basic principles are markedly the same, as is the ease of learning.
2. It’s confusing.
A very subjective statement. To me, CSS is far more intuitive than HTML. Certainly no more difficult to learn. But it seems people want instant mastery with a couple of hours investment, tops. Nothing worthwhile works that way. Spend some time with it, and after you’ve refreshed your browser 100 times viewing your CSS construction, it will be less confusing. Just like anything else on the computer, trial and error is a huge part of the learning process. And bad CSS won’t bust yer box.
Maybe this hurdle can be erased most easily, but right now it’s hard for a busy developer to find all the information needed to be successful, in one place.
Well, it’s all out there. And it’s not hard to find. These are sites I’ve found very useful in my education:
· Fear of Style Sheets (the excellent 4 part series from A List Apart is a great starting point).
· A Designer’s Journey: A CSS Redesign in 5 Easy Pages
· CSS/Edge
· glish.com: CSS Layout Techniques
· BlueRobot.com: Layout Reservoir
· Netscape 4 CSS Tips, from Charles Johnson
· Stephan’s Web Workshop (CSS Fundamentals, Workarounds, and Browser Support)
· CSS How-To’s and Examples (from w3schools.com)
· Style Sheet Reference Glossary
(BTW, you might consider the Manila theme to be a milestone for CSS. I was able to create a CSS-based site in about a minute, even though it would have taken hours starting from scratch.)
Which sort of makes my point. It can also be totally changed just as easily. But credit is indeed due for the release of this CSS theme. It makes much of this discussion somewhat moot.
3. All those ”non-conforming” sites. At best the Web five years from now will be 50 percent CSS and 50 percent table-based. Browsers will still have to support tables for layout.
Translate that to, ”browsers will still have to support HTML 4.01,” and I’ll agree, as it is no different than today. Today, browsers still support HTML 2.0 and 3.2, more than 5 years old. Web designers in most cases must support browsers that are 5 years old. This is nothing new. But it’s no excuse not to move forward.
4. It’s weak. I still want lineto, moveto and drawstring. That would be worth converting my brain to. (Hardly any conversion needed, I already know how to do it from programming in C.)
The spec’s are much stronger than the browser support. I want to be able to use to wrap quoted text, and have it automatically add quotation marks, as the spec dictates. But only Netscape 6.x adds them. For that reason, I don’t use
. Is that the fault of the markup language, or the browsers that don’t support the spec?
I would suggest CSS looks ”weak” because IE 3.0 supported about 30% of it, and Netscape 4.x supports about 60% of it, and only recently have we gotten browsers that support 90% or more. Still, we are forced to use hacks to work around that last 10% or so. The capability and desire to do more with CSS is there, waiting for the browser makers to support it. And for those who haven’t even updated their browser since IE or Netscape 4.x, yes, the view of CSS is weak. Only a fraction of it is supported.
As for asking for other terms that are more ”intuitive” to you, again, that’s very subjective. The ones you list mean absolutely nothing to me. Coming from a design and presentation perspective, which is what CSS is about, things like line-height, border, padding, and float: right make perfect intuitive sense. If I had to learn C, should I expect the language to conform to my previous knowledge of HTML and CSS? Or would my personal background be irrelevant?
5. It’s incomplete. Look at all the problems people are having doing basic webloggish things in CSS. Is it worth the pain if the result is less functional than that it would replace?
Let’s put aside those whose problems with CSS are not unlike those with problems learning C, who managed to do it so poorly they erased their digital wristwatch, just from being near the keyboard at the time of their program’s crash. Put them in the box labeled ”Learning Curve.”
The other problems doing ”basic webloggish things in CSS” often are due to the fact it works on their browser on their monitor at their resolution when they made it, but visitors with other browsers and other resolutions just see ka-ka. This was true with HTML, and now it’s even more true with CSS. It is the fault of neither language, it is the fault of the browsers that lack full support of the languages.
So of course it is incomplete. There are indeed proposals to advance CSS, and make it more complete. But what is the point of rushing ahead when [a] browsers are just now catching up in supporting existing CSS specs with the latest releases, and [b] there is still such resistance to the more basic tenets of CSS? Why steepen the learning curve when people are already complaining about how ”confusing” it is now?
CSS may currently be a gangly teenager, but you can’t ignore it. Like a teen, it is rapidly maturing in capability, and not going away (even when it turns 18). Like a teen, it can be a pain to manage. But choosing to ignore the teen generally brings the worst results.
And the longer you wait to project control, the harder it is. So get busy while it’s still easy. In the time spent writing on this topic, entire weblogs could be converted.
Published 09:52AM, Mon, Feb 18 2002
Category: CSS
Previous: «« Homework: Iraq FAQ ««
Next: »» An Inhabitable Cloud »»


