[personal profile] flexibeast
Over the last couple of days i've been helping [livejournal.com profile] naiyah set up hir Web site. For the most part, it's been an entertainingly challenging experience, particularly learning how to use a PHP-based XML parser to gather particular information from an RSS document. One of the less entertaining aspects of the experience was trying to reimplement part of the site to use CSS instead of tables for layout1. The problem is not CSS itself; the problem is that Internet Explorer doesn't implement the CSS1 standard properly. Most other contemporary graphical browsers - Firefox, Mozilla, Opera, KHTML-based browsers like Konqueror and Safari, Gecko-based browsers such as Galeon - do a far better job of implementing the CSS1 standard, and also make (at least) some attempt at the CSS2 standard. So i've had to create three stylesheets for the site: one containing the CSS that works in all (or most) browsers; one containing CSS to achieve specific effects in standards-hostile Internet Explorer; and one containing CSS to achieve those same effects in standards-friendly browsers. Not only that; but IE's implementation of the CSS Box model is so broken that it appears i'm going to have to do some ugly kludges to correctly produce [livejournal.com profile] naiyah's lovely layout in IE.

Summary: IE is a pile of junk, not only because of its failure to support Web standards, but also because of its security vulnerabilities and its lack of features now commonplace in other browsers (e.g. tabbed browsing - although IE7 is going to have this feature). If you're reading this using IE, i strongly urge you to start using a different browser - Firefox might be a good place to start.



1. So why use CSS for layout instead of tables? For me, there are two main reasons:
  • Maintainability. If you use tables for layout, and then decide to change your layout, you have to go through and manually change every page; whereas if you use CSS, you only need to change the contents of the relevant stylesheet(s). Much less work, and much more likely to result in site-wide consistency of layout.
  • Accessibility. Unfortunately, many - if not most - Web site designs are not particularly usable (or not usable at all) for those people with disabilities. For example, blind people can use screen readers such as JAWS to have the computer 'read out' the contents of a Web page to them. Screen readers read tables row-by-row, which can often result in navigation links being interspersed with other page content. Designing a Web page so that it makes sense if it is linearly 'read out', and then using CSS to perform layout, can reduce (and sometimes eliminate) this problem.

Date: 2005-08-05 09:03 (UTC)
From: [identity profile] ms-le-fey.livejournal.com
OH, I'm so glad to have you as an LJ-buddy. That post made me a lot more aware of the intricasies of web design. Very cool.

Date: 2005-08-05 13:06 (UTC)
From: [identity profile] roostersgrrl.livejournal.com
IE has so many people brainwashed......it truely is an awful browser that doesn't support proper standards whatsoever.

Date: 2005-08-05 13:13 (UTC)
From: [identity profile] flexibeast.livejournal.com
i think part of the problem is that many people aren't even aware that there are alternatives; and if they are, they don't think downloading and installing one of the alternatives is worth it. (Although almost everybody i know who has tried Firefox definitely prefer it to IE.) And of course, IE's sustained dominance of the browser market is more to do with Microsoft's monopoly on the desktop than due to the qualities of the browser itself . . . .

Date: 2005-08-05 13:37 (UTC)
From: [identity profile] aimeearrgh.livejournal.com
I think the people who use IE are the people who probably have AOL as their service provider.

Snerk!

Signed,
A Dedicated Firefox User

Date: 2005-08-06 03:10 (UTC)

Profile

flexibeast: Baphomet (Default)
flexibeast

Journal Tags

Style Credit

Powered by Dreamwidth Studios