Relative weight - reader vs. author styles
I am a strong supporter of CSS1, but you did ask for comments, and I do
have a concern with one part of the CSS1 spec. Overall, however, I regard
it as an outstanding piece of work.
My one concern is with the following, from section 3 "The Cascade":
"Sometimes conflicts will arise between the style sheets that influence the
presentation. Conflict resolution is based on each style rule having a
weight. By default, the weights of the reader's rules are less than the
weights of rules in the author's documents. I.e., if there are conflicts
between the style sheets of an incoming document and the reader's personal
sheets, the author's rules will be used. Both reader and author rules
override the UA's default values."
One of the primary design goals of HTML is to be viewable on any UA. A
reader may have very good reason to specify his or her own style, such as
poor vision (requiring larger type) or color blindness (requiring specific
color settings). It is utterly impossible for the author to anticipate
every situation in which his document will be viewed (or heard), and thus
equally impossible for him to make allowances for every possible need. For
this reason, there should be a method for allowing the reader to specify
settings that cannot be overridden by the author under any circumstances.
I assume that the "important" declaration is meant to accomodate situations
where there is a genuine need for specific formatting, such as legal
documents, and this is a legitimate concern in many cases. It is my
concern that many style sheets will have their contents marked as
"important" when there is no legitimate need for them to be so marked.
Similar abuse of existing HTML constructs is already widespread, and is a
major reason that style sheets are needed to begin with, so there is ample
precedent for this behaviour.
To allow for this, I propose an addition to the "important" declaration: A
"required" declaration, which would be guaranteed to override all other
settings. This declaration should only take effect if found in a user's
default style sheet, and should be ignored if found in an author-specified
style sheet. This would give the user the final word on how his UA will
present web pages, and this sort of control over the UA is an absolute
requirement in some cases.