Style Sheet Implementations (was Re: Definition of "rule"?)

I am co-writing a book on HTML 4.0 that features a chapter on Style
Sheets.  I will be writing a few quick notes to www-style regarding
some perceived inconsistencies in style sheet implementations for
potential discussion.  Hopefully my questions and examples will be
of some interest to other www-style subscribers.

Håkon, thanks very much for your quick response.

At 10:19 PM 7/26/97 +0200, Håkon Lie <howcome@w3.org> wrote:
> (minor point, the first colon should be omitted in the above example:
> H1, H1, H3  { color: white; background: blue; }

Thanks for the correction -- I noticed the typo after sending the
mail, I'll try to double-check my examples more thoroughly in
the future.

I wrote:
>> I'm also stunned by how wildly different a style sheet
>> can be interpreted by Navigator 4.01, IE 3.02, and IE 4.0 platform
>> preview 2 on my Windows 95 system.

Håkon wrote:
> This is indeed a concern and some people have proposed temporary
> reliefs [1] until implementations are aligned.
> [1] http://www.verso.com/agitprop/css/

Since the book that I'm co-writing is for newcomers to HTML,
I will not be describing a script-based solution, as is presented
on Todd Fahrner's interesting page.  Instead, I will try to teach
an introduction to the use of style sheets that considers current
implementations so as to use "safe examples" as much as possible
(while also presenting some of the dangerous examples).

Even when implementations do become aligned, I am concerned that
there will still be significant numbers of people using the old
versions for quite some time.  (Consider evidence that there
are many surfers still using pre-2.0 betas of Navigator, for

For this reason, it's far better that a browser not implement
styles AT ALL than to implement them incorrectly.  To have
browser versions in common use with broken interpretations
of correct style sheet syntax is much more of a setback for a
style sheet author than if the browser simply ignored
style sheets.

IE 3.x's style sheet implementation is the most dangerous, since
so many of the test pages fail dramatically, as demonstrated by
For this reason, I predict that use of Todd's script (or
variations on it) to disable style sheets for IE 3.x will become

Håkon's test page at
is a good confirmation of the problems with all of the current

(Håkon, this page and the MSIE 3.0 test page don't seem to be
linked from the rest of the CSS pages, and the only reason I found
out about them was from reading the back issues of www-style.  I
think these pages are enormously useful for people learning about
style sheets, so you may wish to consider adding a link to
that leads to
if possible.)

Given the three popular platforms that support style sheets,
there are serious gaps in their basic support of the feature
of style sheets, let alone the style sheet implementation itself.

* IE 3.x and Navigator 4.01 both allow a user to disable author
  style sheets, but don't offer a method of supplying any user-
  defined style sheets to substitute or supplement author-defined
  style sheets.

* IE 4.0 platform preview 2 allows you to supply a user-defined
  style sheet, but doesn't offer a process of disabling author
  style sheets (except for colors, font styles and font sizes).

All three of these browsers suffer from implementations of style
sheets that are flawed in numerous ways, as is well known to
readers of this list.

Netscape acknowledges some known issues at
but there is no similar list from Microsoft that I'm aware of.

I've seen the five resources demonstrating current implementations
that are listed at 

Today and tomorrow I will post some examples and screen shots
for discussion of implementations, in part to determine which
browser is correct.
E. Stephen Mack <estephen@emf.net>    http://www.emf.net/~estephen/

Follow-Ups: References: