comments on CSS1
David Seibert (seibert@hep.physics.mcgill.ca)
Mon, 4 Dec 1995 15:49:12 -0500 (EST)
Suggested modifications to CSS1
I like the
CSS1 working
draft. However, I have suggestions for significant improvements in
the following four areas.
Warnings and notifications
The following thought should be kept in mind when drafting
standards for scripts (this also applies to html, http, and almost any
software for the WWW):
The job of the author is to provide documents that can be interpreted by
the UAs that their readers use, and the job of the UA is to make
these documents as clear as possible within the prescriptions given by the
author. When the UA receives a document that it cannot render as
prescribed, it should not warn the reader of this except as a last resort.
In most cases, a warning to the reader will not help him to read the
document, but will merely inform him that either the author or the UA has
failed in their job. If a reader receives too many warnings, his most
likely response is either to find a new UA or to stop reading documents
from the author; this is bad for the reader, the author, and the UA
vendor, so the use of warnings should be minimized.
A warning when the reader or UA is overriding "legal" or "important"
declarations may be a good idea. However, a warning is only necessary
when a font size is declared to be legal or important and the UA is going
to use a smaller font size. Substitution of a larger font may be done
frequently by readers who want to see fine print (which may have a minimum
legal size, but no maximum) in a document, or who have impaired vision.
When a reader turns style sheet downloading off, the UA should warn the
reader that he may miss legal or important declarations. This should occur
at the time that the UA is instructed not to download style sheets.
However, if style sheet downloading is off, the UA should not be
expected to check the (non-imported) sheets for important or legal
declarations and warn the reader of their presence, as this can
significantly degrade the performance of the UA. The reader may wish to
be notified whenever he reads a document with an attached style sheet that
has not been downloaded, but this is really at the reader's discretion.
When specified colors are not available, the UA should attempt to provide
contrast so that all text is legible. However, it is not necessary to
warn the reader that a certain color was requested but unavailable.
The main purpose of style sheets is to enable authors to improve the
appearance of their work. If a reader would rather reduce the quality of
what he sees by not downloading style sheets, so that he can read it
faster, this should in general be allowed without warnings. If an author
is concerned with this, he may warn his readers that the quality of what
they see may be reduced if they do not use his style sheets, but it is
not necessary for all readers of all authors to receive warnings if they
choose not to download style sheets.
Tables
When conflicts arise while a UA is rendering a table, the most
important thing is that the information present be displayed in a clear
manner, so that it is useful to the reader. For this reason, frame
conflicts within tables should be resolved in favor of the
choice which is likely to make the information clearest (e.g., leaves
the most space around the element, or provides a line separating it
from adjacent elements). This is similar in spirit to the policy of
using the larger of the two frames when joining two adjacent table
elements.
Caching style sheets
It will be important for authors who use complex style sheets that their
readers have a way to save the style sheets, so that they do not need
to download them every time they read a new document (e.g., a newspaper
publisher will have a large number of documents that use a common style
sheet). Probably a distinct style sheet cache would be the best
mechanism for this, as there are many cases where the reader would
not want to save all of the documents but would want to save the common
style sheet. This is a characteristic of UAs, not of style sheets, but
it makes sense to help point the UA vendors in the direction that we
would like style sheet technology to move.
The "on-off" approach to style sheets in CSS1 is also too restrictive.
There should be at least three options for standard UAs, in order of
text presentation speed:
- Download (and use) all style sheets,
- Use only cached style sheets (don't download new style sheets), and
- Basic html (don't use any style sheets).
That way, readers can take advantage of cached style sheets for commonly
used styles to improve UA performance.
Reader-author conflicts
The reader will (and should) always have the power to override the
wishes of the author with respect to style - it's his UA. Sophisticated
users should have the option of modifying all style prescriptions; in
fact, it is impossible to stop them from doing this, so it will be more
profitable to ignore the issue of final control over output, and let the
situation evolve naturally. The average user will want a browser that
follows the author's style suggestions, because he will not want to take
the time to make documents look good when they are not compatible with his
default style. Thus, issues of priority will naturally evolve in
accordance with the draft specifications of CSS1, so that the author's
style choices will dominate.
Last modified 4 December 1995 by
David Seibert.