W3C home > Mailing lists > Public > public-css-testsuite@w3.org > October 2011

Re: [CSS21] z-index-020 test case is invalid

From: Øyvind Stenhaug <oyvinds@opera.com>
Date: Wed, 26 Oct 2011 12:50:08 +0200
To: "public-css-testsuite@w3.org" <public-css-testsuite@w3.org>, "Arron Eicholz" <Arron.Eicholz@microsoft.com>
Message-ID: <op.v3ygdup1bunlto@oyvinds-desktop>
On Wed, 26 Oct 2011 02:23:08 +0200, Arron Eicholz  
<Arron.Eicholz@microsoft.com> wrote:

> http://test.csswg.org/suites/css2.1/20110323/html4/z-index-020.htm
>
> http://www.w3.org/TR/CSS21/zindex.html
(...)

> o   The remaining steps 3-10 do not apply since there are no matching  
> descendants. This means we unwind out of this section and go back to the  
> DIV (test container) steps.
>
> ·         Step 6: There are no inline elements in DIV (test container)
>
> ·         Step 7: We first come across DIV (outline) as the first  
> candidate (in tree order) that falls into this step.

I don't think this is at all obvious. It says "first for the element, then  
for all its in-flow, non-positioned, block-level descendants in tree  
order". So first the steps are performed for .container, and then we get  
to step 7.2.1: "For each box that is a child of that element, in that line  
box, in tree order".

I can't even tell what this is supposed to say. The spec doesn't usually  
talk about boxes being children of elements (if anything it sometimes  
talks about boxes being children of other boxes, but doesn't actually  
define the formatting structure). I can make some sense of the steps by  
assuming "For each box that [is generated by] a child of that element  
[...]". But the way these steps drill down the tree and still just talk  
about "the/that element" necessitates a lot of interpretation.

> o   Steps 7.1, 7.2: don't apply since the DIV (outline) only has an  
> outline.
>
> o   Step 7.3: Paint the outline for the block level element DIV  
> (outline) this will draw on top of the blue box DIV (float)
>
> ·         Step 7: There are other candidates that we need to consider  
> (in tree order) we need to handle DIV (inline).

No, that doesn't work. The .inline div is not an "in-flow, non-positioned,  
block-level descendant".

-- 
Øyvind Stenhaug
Core Norway, Opera Software ASA
Received on Wednesday, 26 October 2011 10:50:51 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 26 October 2011 10:50:57 GMT