- From: Boris Zbarsky <bzbarsky@MIT.EDU>
- Date: Wed, 02 Sep 2009 17:55:14 -0400
- To: Bert Bos <bert@w3.org>
- CC: www-style@w3.org
Bert Bos wrote: > In other words: CSS needs to say something definite about the situation, > but it doesn't matter much *what* it says. Agreed. At least it doesn't matter much for authors. > Option A) The run-in heading is *not* affected by the paragraph's > first-line pseudo-element. The inheritance hierarchies are: > Option B) The run-in heading *is* affected by the paragraph's first-line > pseudo-element. The inheritance hierarchies are: > Option C) First-line pseudo-elements do not apply to blocks with run-in > headers. The inheritance hierarchies are simply: Here's what implementations seem to do: Opera: No support for multiple ancestor first-lines as far as I can tell; only the innermost block's first-line style is used. If this is styled, the run-in does not run in. So no way to test the behavior in question. Webkit (trunk): seems to be mostly your option B, except of course that the paragraph's first-line pseudo-element inherits from the paragraph itself (as required by the spec for first-line, last I checked). Thus the inheritance hierarchy becomes: ancestor elements (3) the paragraph element (2) ancestors' first-line pseudo-elements (5) the paragraph's fitarst-line pseudo-element (4) the heading element (1) [content from the run-in heading] That is, the run-in is simply treated as a child of the paragraph in Webkit in this situation, for inheritance purposes (or rather, a child of the first-line, which is a child of the paragraph). At least for color. I didn't test exciting things like how 'display' inherits. If no first-line styles are specified, it's treated as a child of the paragraph's parent for inheritance purposes. I guess this would be option B'. IE8: Only one first-line is used; if it's set on the paragraph that's used; if not the paragraph's parent's first-line is used. The run-in inherits from the latter but not the former. This seems to be option A, I think. I honestly don't have a good feel for what the right thing here is to do or what the other options are. Since Gecko only implements "innermost" first-line, like Opera, option A is indistinguishable from one in which we just never inherit from first-line period in Gecko at the moment. -Boris
Received on Wednesday, 2 September 2009 21:55:59 UTC