Room 101English
Room 101German

On November 7, 1996, the following typewritten confession was found on a steel chair bolted to the floor of Room 101 in the basement of Bay City Police Headquarters. There was no sign of a struggle. Just a few cigarette burns and blood stains. And one very frightened fly on the wall.


Uh-oh

According to the November 4, 1996, issue of Web Week, Netscape Communications Corporation is abandoning industry-supported Cascading Style Sheets (CSS) in favor of its own JavaScript Style Sheets (JSS). To prove it's serious, Netscape has already dotted its "i"s and crossed its "t"s with the World Wide Web Consortium (W3C) by submitting JSS as an industry standard. Assuming this latest move by Netscape is not a clever ruse to force shamelessly chameleon Microsoft Corporation to squander resources on a Strangelovean "Doomsday Machine" of its own, JSS is bad news for web developers everywhere.


Style sheets are good

To understand what's wrong with JavaScript Style Sheets, you have to understand what's good about style sheets. "Style sheets have been on the W3C's agenda since day one," says the WWW Consortium. Why? Because they enable authors to control the look and feel of text from a central location. Desktop publishers use templates to control margins, paragraph styles, character styles, and the like. Web developers, so the theory goes, will soon use style sheets to do the same thing.

Style sheets should have been a no-brainer for the WWW Consortium. The HyperText Markup Language (HTML) is based directly on the 10-year-old Standard Generalized Markup Language (SGML), which uses style sheets extensively. In SGML, you define styles for literally everything in a book in one style sheet file. This style sheet file is then referenced by every other component file of that book. Then, if you decide you want to switch all headings from hot pink to geometric blue, you make the change in the style sheet and -- wallah! -- all headings in the book change automatically. In SGML, style sheets are the holy of holies, the mother of all labor saving tools, goodness itself.


Cascading Style Sheets are bad

So what's wrong with Cascading Style Sheets? The word "cascading," that's what. CSS allows three levels of style sheets:

  • Local
    Attached to every paragraph tag. Like formatting paragraphs locally, without paragraph styles, in desktop publishing. Pure evil.

  • Global
    Attached to the BODY of every file. Similar to document templates, which can only be attached to individual files, not books, in desktop publishing. Bad implementation of a good idea.

  • Linked
    File that is referenced by other files. Exactly like SGML style sheets. Pure goodness and light.

But, wait a minute. What happens if you use local, global, and linked style sheets in CSS? Who wins? Drum roll, please: evil local style sheets override good linked style sheets. That's right: the lowest common denominator wins.


Evil twins are ugly

So maybe JavaScript Style Sheets are better? Maybe. Maybe not. But JSS begs the question: why do in JavaScript what you can do in HTML? CSS may be a bad implementation of a good idea, but a second standard is, by definition, evil. And evil always leads to trouble:

  • Double standards
    Soon, web developers may be forced to choose between two competing style sheet standards. Either they choose one and lose customers who use the "other" browser. Or they do double work -- exactly what style sheets are designed to avoid.

  • Lower standards
    By abandoning the high ground, Netscape is alienating its own loyal customer base and leaving CSS to the tender mercies of a company with a demonstrated hostility to open systems.

  • No standards
    Ultimately, a CSS-JSS turf war could stop style sheets dead in their tracks. No developers in their right minds will develop sites using CSS or JSS if it means alienating customers -- remember, hit counts pay mortgages -- or if it adds to an already crushing workload.


Bottom line

It appears Netscape is on the verge of making a fatal strategic error. If it really is serious about JSS, Netscape will lose market share to an enemy it will start to resemble. Given the corporate install base of Windows, using "human shields" as pawns in open warfare between Microsoft and Netscape will simply force Corporate America to hold its nose and choose Microsoft yet again, turning Netscape into the next Apple.

Netscape, three words: Levis, Marlboros, open borders. Do the right thing or start looking for property in Redmond. Your choice.


See also


Bay CityBunkerStudioCasinoHangarPost Office

© Kurt Ament | Bay City Council