- From: Ian Hickson <ian@hixie.ch>
- Date: Thu, 01 Aug 2002 11:09:45 +0200
- To: www-style@w3.org
Coises wrote: > I'm going to guess that what that principle means (I don't recall the > original statement, if I ever heard it) is that the determination of which > *elements* may be matched by a given a selector cannot depend on the CSS > properties of (any) elements. > > This does not apply to pseudo-classes and pseudo-elements, though. For > example, in CSS2, the ":first-line" pseudo-element can apply only to a > block-level element; but whether an element is block-level or inline-level > is dependent on the "display" property. Pseudo-elements are a case of where a property ('display') on another element (the block) causes a new element (in this case, pseudo-element) to be generated. This then causes the new element to find which rules match it. The CSS model is applied on a per-element basis, in document order, like this: For each element: 1. Find all rules matching the element or pseudo-element. 2. Apply all the relevant properties. 3. If this has created any new elements or pseudo-elements, add them to the list of elements to process. Step 2 cannot affect step 1 of the same element or pseudo-element. Note that 'display' doesn't actually change which rules match '::first-line' -- the same rules match, it's just a matter of whether the styling system does anything with those rules or not (i.e. whether the first-line exists or not.) > While it is a technical distinction, the suggested "dynamic" property > doesn't change which *elements* a selector might match It does, because... > it changes which > dynamic pseudo-classes can actually be triggered by external changes. ...that's the same thing. > There is precedent for this in an existing CSS3 working draft; see: > http://www.w3.org/TR/2000/WD-css3-userint-20000216#user-input > (the "user-input" property determines whether an element can take > the :active state). An analogous infinite loop is noted and disallowed. That property will not appear in the final version of this spec. It was an error. -- Ian Hickson )\._.,--....,'``. fL "meow" /, _.. \ _\ ;`._ ,. http://index.hixie.ch/ `._.-(,_..'--(,_..'`-.;.'
Received on Thursday, 1 August 2002 05:09:54 UTC