All about compromise
December 17, 2001
Want to dig even deeper? Post to the new MacEdition Forums (beta)!
Modern, standards-based Web design is, at present, all about compromise. You want to get rid of font tags but you have to use pixel units despite the accessibility issues because ems and percentages break in some browsers. You want to get rid of tables, but that means messes in Netscape 4, green-on-green text in some versions of OmniWeb and floats not working in iCab 2.x. You want to use the DOM, but there are three different ways you need to learn to make browsers understand what you are doing, and even then you’ll be put out by browsers like OmniWeb which haven’t adopted anything that has happened since oh, about 1997. Everything you try breaks in one browser or another – it’s enough to drive anyone nuts.
Some people shrug and test in IE/Windows, figuring that they they will reach the bulk of the market anyway. Personally I think this is selfish, lazy and short-sighted. Desktop PCs won’t be the overwhelming majority of devices viewing the Web for much longer. Designing for PC screens alone will be as fraught as trying to design for one screen resolution. Designing for two versions of two browsers on two platforms, let alone one browser-version-platform combination, simply betrays a lack of respect for your audience.
Designers can and should do better than that. That’s what the professional ones are getting paid to do, even if in truth, some of them don’t know what they are doing.
Still, one has to wonder how hardcore you have to be on this. Just how many browser bugs matter? Just how many older browsers matter?
When does a browser stop mattering?
Because I put a lot of work into analysing MacEdition’s logs in order
to track developments in browser adoption that I
can write about, I know a lot more about the usage of minor browsers by
MacEdition readers than do most Web site operators. So I don’t just
know about Netscape, IE and Opera, or Netscape 3.x versus IE 5.x.
I look at minor versions, and I look at minor browsers. That’s why I
know for a fact that few people still use those pre-4.08 versions of
Netscape Navigator that crash with
DIVs with nested tables. That’s why I know that
Cyberdog still lives, although it’s now just a tiny fraction of our
traffic. That’s why I know that Netscape 6.1 took over from
Version 6.0 very quickly, and almost nobody uses Mozilla betas older than
Version 0.9.2 anymore.
And it’s the reason I laugh when I hear Web authors and designers talk about “targeting” particular browsers or population segments. They are kidding themselves if they think their audience is that uniform.
This sort of knowledge is a dangerous thing, however. Knowing that Cyberdog still commands some traffic makes me wonder whether a tables-based layout with CSS and heavy use of color is leaving those readers behind. I’m going to ’fess up right now and say that I have no idea what MacEdition looks like in Cyberdog. I’ve checked it in early versions of Netscape and even Mosaic, Lynx, Opera for EPOC and most browsers from the past five years. I’ve seen screenshots from WannaBe and iBrowse and a few others besides. But I don’t have a Mac with OpenDoc installed, so I can’t run Cyberdog. I’m guessing it looks rather like Netscape 3.0. (Yes, please send me a screenshot if one of you’re one of those Cyberdog users.)
If a browser is consistently less than 1 percent of our traffic, I’m not going to feel too bad about its users getting a somewhat different look to what users of version 5 browsers see. But even 1 percent is too large a group of readers to let their browsers crash or make the content completely illegible. I’d argue 0.1 percent is too high, too: when you have tens of thousands of pageviews a week, 0.1 percent could be scores of separate people, each of whom could badmouth the site to their friends.
So there’s another compromise; I can’t stop that
less-than-1 percent of Netscape 4.0x users crashing without
spoiling the view of the other Netscape 4 users, who number more like
11 percent. I can’t ensure links don’t break in
Netscape 4.x without causing funny renderings in IE5. I can’t
style regions using CSS and
id attributes, and use the same attributes as link targets in
OmniWeb. I can’t work around Opera/Mac Beta 3’s unattractive
line spacing without causing all manner of bugs in IE4 (fortunately, this
was fixed in Opera/Mac Beta 4).
So I compromise. We all do.