- From: Stuart Ballard <sballard@netreach.com>
- Date: Wed, 28 Aug 2002 11:05:18 -0400
- To: Chris Lilley <chris@w3.org>
- CC: www-style@w3.org, Lachlan Cannon <luminosity@members.evolt.org>
Chris Lilley wrote: > On Wednesday, August 28, 2002, 9:36:59 AM, Lachlan wrote: > > > LC> Could non-CSs presentational hints be defined as: > > LC> "Any element of the markup which changes the display > LC> of an element, for which redifining that element to display > LC> in another way would not make sense." > > No, the 'would not make sense' is dangerous. Its a default, but > changing it might well make perfect sense. > LC> Eg, using CSC to redefine b would be stupid, but using it to > LC> redefine strong makes sense. > > A non-stupid restyling of (b> would be to use underlining, for > example (a common manuscript convention, where single and doubnle > underliningare used to indicate italics and bold to copy editors). How about this: "Any aspect of the markup which explicitly indicates a preferred rendering, AND does not carry any other semantics". This would cover <center>, align="left", <br>, <pre>, <font>, etc. All the usual suspects. <em> and <strong> indicate a preferred rendering, but they do so *implicitly* due to historical use, rather than *explicitly* as required by the proposed definition. Also, they carry additional semantics: emphasis. We might need an explicit exemption for the style= attribute, which otherwise would qualify based on this definition, and that would be wrong. Perhaps "Document languages may provide mechanisms for explicitly including CSS stylesheets within the document, such as HTML's "style=" attribute. Such mechanisms are NOT considered 'non-CSS presentational hints'." By the way, an interesting implementation approach to provide the CSS2 cascade based on this definition of "non-CSS presentational hint", while still using the UA stylesheet to define their rendering, would be for an implementation to give "!important" rules in the UA stylesheet this level of precedence. That would make the (CSS2) cascade look like this: 1. !important user style rules 2. !important author style rules 3. ordinary author style rules 4. !important UA style rules (and non-CSS-expressible presentational attributes) 5. ordinary user style rules 6. ordinary UA style rules There's no particular logic to this cascade ordering, but there isn't any particular logic to the existing ordering either - except for the logic of practicality, in that this ordering provides the behavior we want. Thus a snippet of a UA stylesheet might look like this: b { font-weight: bold !important } strong { font-weight: bold } i { font-style: italic !important } em { font-style: italic } I think everyone has agreed that the proposed CSS2.1 modification to this cascade (which would swap #4 with #5) is a bad idea because it makes it impossible for a user to place a rule at a level of precedence lying between #4 and #6, which is a useful thing to be able to do. Am I right that this is the consensus? Will it be reflected in CSS2.1 final, if we can get the definition of 'non-CSS presentational hint' correct? Stuart. -- Stuart Ballard, Programmer NetReach - Internet Solutions (215) 283-2300, ext. 126 http://www.netreach.com/
Received on Wednesday, 28 August 2002 11:09:23 UTC