Re: [CSS21] zindex.html E.2 issue: ordering contradictions

On Fri, Nov 05, 2010 at 02:28:55PM +1100, I wrote:

>     [...]
>     to introducing the concept of the "painting sequence" for an element,
>     and say that the list forms a subsequence of the painting sequence for
>     the element, and explicitly mentioning that it's a subsequence because
>     it excludes outside list markers and optionally outlines.

(I shouldn't have mentioned outlines as exceptions, btw.)

I should be a bit more specific about why I made special mention of outside
marker boxes here, because there may be a better approach, depending on the
reason for the CSS2.1 spec's existing coyness about them.  Unlike CSS3,
CSS2.1 is (apparently deliberately) not very specific about where outside
marker boxes go in the rendering tree or box tree: e.g. "CSS 2.1 does not
specify the precise location of the marker box or its position in the
painting order [...]".  

The existing text leads open the possibility that an outside marker for the
root element would be a sibling rather than child of the root element's
principal box.  (Recall that the spec never actually uses the phrase "box
tree", while zindex.html's phrase "rendering tree" isn't defined, and its
initial definition of "element" currently excludes outside marker boxes;
though I suspect that this is accidental.)  So the only reason that I made
a special case for outside markers in the above suggested wording was out
of concern that they might not already be included in the painting
sequence, because of their explicitly undefined painting order and their
unspecified ancestry.

I don't know the reason for the existing undefinedness, but it would be
good if we could instead use some other approach that makes them clearly
within the painting sequence.

>     i.e. I tentatively
>     suggest that it be made non-conformant for a UA to paint other things
>     as well.  I believe that something like that is required for the test
>     suite to be correct: there's no way to test visibility:hidden if
>     conforming UAs are allowed to render things other than what CSS directs
>     them to render, such as something looking exactly like the thing that
>     should be hidden.

For that matter, most of the test suite is technically invalid if a
conforming user agent is allowed to paint a different document over the
top of (and obscuring) the expected result.

Granted, it would be considered poor faith, but I nevertheless currently
think it better to specify something as the complete set of things in the
rendering.

pjrm.

Received on Saturday, 6 November 2010 21:55:22 UTC