Comments regarding CSS3 module: Cascading and inheritance (WD 2002-02-19)

CSS3 module: Cascading and inheritance (W3C Working Draft 19 February 2002)
Section 7, "Computing weight" 
(<http://www.w3.org/TR/2002/WD-css3-cascade-20020219/#computing>) proposes:

||  If the user agent chooses to honor presentational hints from other
||  sources than style sheets, these hints must be given the same weight
||  as the user agent's default style sheet. This rule is intended for
||  presentational hints in HTML.  Note that non-CSS presentational hints
||  had a higher weight in CSS2. 

This change would be disastrous!


One of the most important functions of a user style sheet may be to
override choices in the user agent default style sheet.  By using "normal"
(that is, not !important) rules, the user can choose new defaults for
presentational attributes --- many of which may not be accessible for
modification in the user agent default style sheet.

This change would make it impossible to set defaults in a user style sheet
that could be overridden by old-fashioned HTML.  For example, in CSS2,
a user can include this rule in a user style sheet:
     BODY {color: navy; background: #FEC}
to make text appear, by default, in navy on a manilla background; a page
that specified either:
     BODY {color: white; background: url(dark.png) black}
or:
     <BODY TEXT=WHITE BGCOLOR=BLACK BACKGROUND="dark.png">
would override this and be displayed with the indicated attributes.  The
suggested change would have the thoroughly unintuitive and illogical result
of making these two display differently: the first would follow the author
specifications, but the second would follow the user specifications.


To a user, it makes no logical difference whether a particular effect comes
from a style sheet or an HTML presentational hint; these should not be
given opposite priorities with respect to the user style sheet.

This change might also present difficulties for user agents which could
otherwise implement user-selected presentational defaults as a (real or
virtual) user style sheet; it would instead be necessary to modify the
(real or virtual) user agent default style sheet to set these defaults.

-- 
Randall Joseph Fellmy aka Randy@Coises.com

Received on Friday, 15 March 2002 06:02:33 UTC