I've read the HTML 3.0 specs and Style Sheets draft and came to
conclusion that the data in the STYLE element could easily become
larger than the text of the document. There are (will be) user agents
that can apply only part of style suggestions (due to limitations of
hardware or user request) and there is no need for such agents to
parse the whole thing.
Instead, style information should be classified by type. Something
like this (in the HEAD element of HTML document):
Here comes the data which applies to all kinds of agents, such as
which headings (if any) will be numbered.
Data that applies to all agents that will present text on some
kind of 2D surface (on the terminal or on the paper).
You can include things like numbering style for lists and/or
headings, indenting and alignment info for classes, margin info and
BTW, if margins are specified in en units/points/pixels or
something like that, how should textual browser behave? That is,
how many points a character on the terminal contains?
and so on...
Standalone style sheets are referenced through LINK element, and it
should contain class info. Something like:
<LINK REL=StyleSheet HREF=whatever CLASS="color font">
Agents that will not use that info need not to access that style
sheet. More than that, the priority level should be included as well.
<LINK REL=StyleSheet HREF=whatever CLASS="color:insist font:insist">
If the agent was told not to apply color and font hints unless author
insists, the sheet in the first example needs not to be loaded.
Standalone sheets should group their info in a similar manner. This
would (hopefully) allow certain agents to have simpler and faster