Feed Sign in with OpenID OpenID

Simon Willison’s Weblog

Teaching CSS: there’s a long way to go

This email to the css-discuss mailing list does a great job of describing the confusion and frustration that still confronts traditional web developers who are only just starting out on the road to mastering CSS. When you’ve “got it”, it’s easy to forget how much of a paradigm shift it is away from old school table methods. Here’s an extract:

Step Eight.

Just when you think you’re settling down into a slow and steady learning curve, this is about when you start getting emails from everyone who uses your site describing all kinds of variations on your layout as it has been interpreted by their varying browsers and platforms. This stage is the most important of all, the one where you realize that CSS support is far, far more random than any HTML workarounds that you’ve been dealing with for the (insert personal experience here) years you’ve been making web pages.

(Excerpt from an email from a user of one of my sites: “the new color and stuff on the homepage looks good, except on my computor [sic] some of the pages are cut off at the bottom and have big gaps in them”)

Maybe a good analogy to make here is one with Linux: both are great in principle, but if you aren’t comfortable with what you are doing you can run in to a whole bunch of problems. I wouldn’t recommend anyone who is still on the CSS learning curve to move a big commercial project to pure CSS, just as I wouldn’t suggest a Linux newbie start hosting their own internet facing server.

At any rate, it’s obvious that we as a community still have a long way to go in creating useful resources for people who want to make the switch to CSS.

This is Teaching CSS: there’s a long way to go by Simon Willison, posted on 19th November 2003.

View blog reactions

Next: Contribute / ProFTPd problem solved

Previous: Sprint PCS goes CSS

10 comments

  1. Graceful degradation. How hard is it? ::scratches head:: ...It's A rhetorical question, I've been using CSS in one form or another, to one degree or another, since late '98, and I've learned that the KISS Principle can take one a long way.

    ben - 19th November 2003 06:15 - #

  2. Apparently it's much harder than we think it is. You have to remember that graceful degredation is pretty high on the learning curve - before you can tackle it you need to know the capabilities of the different major browser versions, various CSS hiding tricks, the kind of market shares you're dealing with for each one... there's a heck of a lot to learn.

    Simon Willison - 19th November 2003 06:20 - #

  3. Plus, I think, you have to make actual business decisions (or, if you don't care about money, at least actual customer experience decisions) about which client environments get the "full experience," which get the "graceful degrade" and which you won't worry about at all unless you get lots of complaints.

    The one everyone seems to struggle with is the Netscape 4 series. You still have product managers out there who want to provide the full experience to that browser. And to do that, you're talking about either CSS hacks or HTML hacks.

    My CSS life got so much easier as soon as I decided I would relegate the N4 series to the graceful degrade. And as it becomes easier to simplify markup (toward, I think, but never quite all the way to fully semantic HTML), I figure I might be "accidentally" supporting client environments I didn't even contemplate. No harm there.

    Jay Small - 19th November 2003 12:55 - #

  4. W3 Schools' has a page on browser stats. Browser stats for Netscape 4 seem now to be running at around 1%. Once a browser is first, no longer under development, and secondly, being used by less than 1% of visitors, I'd have thought gracefully degrading its experience - or even hiding all the CSS from it - was pretty reasonable.

    Of course, that is a worldwide average and there will be different figures for certain sites. There are a number of caveats, too. Opera usage must be higher, as it can lie about what it is. I wonder if Opera usage is actually higher in Scandinavia, or if there's no difference.

    Michael - 19th November 2003 14:14 - #

  5. for my personal sites I have forsacken (?) all older browsers but I haven't really come up with a plan for business sites. The CSS learning curve won't get any easier until IE gets fixed. Getting divs to work more like table would ease the learning curve.

    owen - 19th November 2003 14:40 - #

  6. I have to agree with Owen. Mastering floats is a pain, yet they are key page layout if you're not using tables. There are countless tutorials on using floats and creating 2 and 3 column layouts, yet most CSS newbies still have a hard time dealing with them. Yes, I know DIVs load faster than tables, etc., but tables are still more intuitive to use for layout for many folks.

    Clint - 19th November 2003 16:18 - #

  7. When I wanted to learn CSS and implement it on our corporate site (as soon as I heard I could get rid of font tags I was on board) I knew I had to limit myself. I wanted to implement boxes and scrap tables, but that was all new technology and I heard there were problems on older browsers (this was 1999). So I stuck to text styling, and that was enough. There's enough to learn about proper CSS coding and there are enough benefits gained from simply learning how to style text that is should really be seen as the first level. I'm afraid that too many people get themselves into trouble with styling Divs and working on box layouts without really understanding the code. CSS is complex, I don't think that's received enough emphasis. We tend to evangelize it as a great and simple solution. While it is easier than maintaining a site full of TDs and FONTs, it is still complex and requires a lot of effort and knowledge.

    Lou - 19th November 2003 16:44 - #

  8. Note that CSS formatting is not fully supported in various email clients (including webmails). This means that as a designer, I have to undo all my formatting so that my attractive mails can be viewed by my list. Telling a designer that they have to maintain a CSS and "barely-css" version will cause either headaches or departures. Guess what type of coding they default to? Michael

    Michael Wexler - 19th November 2003 18:23 - #

  9. The answer to Michael's problem? Don't send HTML-formatted emails!

    Andrew - 19th November 2003 18:59 - #

  10. While I'm nowhere near as good at CSS as most people here, I have to say I didn't find it terribly difficult to learn. Then again, I'd been using LaTeX for about a year at that point and the whole separating content from presentation was very natural to me. The fact that browsers don't always interpret things the same way was just another thing to tweak/keep in mind/occasionally get really frustrated by when something was really braindamaged.

    I second Andrew in HTML e-mails BTW.

    Mili - 21st November 2003 08:30 - #

Comments are closed.

Previously hosted at http://simon.incutio.com/archive/2003/11/19/teachingCSS

A django site