Re: [CSSWG] Minutes and Resolutions 2010-04-21

On Mon, May 17, 2010 at 10:42 AM, Boris Zbarsky <bzbarsky@mit.edu> wrote:
> On 5/17/10 1:25 PM, Tab Atkins Jr. wrote:
>>
>> An asbpos table-cell's auto position is defined as the first of the
>> following that exists:
>
> I assume you mean the auto position of an abspos element whose parent is a
> table, table-row-group, table-header-group, table-footer-group, or
> table-row?  Or do you really mean something with "display: table-cell;
> position: absolute"?  If so, what about the other cases?

Sorry, the former.


> By the way, this brings to mind another obvious case where abspos elements
> don't act like "display: none" in current UAs:
>
>  <!DOCTYPE html>
>  <body>
>    <span style="display: table-cell">a</span>
>    <span style="position: absolute"></span>
>    <span style="display: table-cell">b</span>
>  </body>
>
> Every single browser I have here (IE8, recent Webkit, recent Gecko, Opera
> 10.5) creates two rows (and in fact two tables, as a slightly more careful
> testcase shows) in this case, not one table with one row.

Right, in my ideal world that would create a single table.  Abspos
should be treated exactly as display:none for the purpose of the table
algo.


>> Its vertical position is:
>> * the top inner edge of the padding box of the table-row it would be
>> placed in if it weren't absposed
>> * the top inner edge of the padding box of the following table-row
>> * the bottom outer edge of the border box of the preceding table-row
>> * the top inner edge of the padding box of the table
>
> I think making sense of this list depends on the answer to the cases we're
> considering above... at least for me.  For one thing, the definition of "the
> table-row it would be placed in" might depend on the answer to that
> question.

Ah, sorry, that's a bad shorthand.  Try this:

* the top inner edge of the padding box of the table-row of the first
table-cell box following the element
* the top inner edge of the padding box of the table-row of the first
table-cell box preceding the element
* the top inner edge of the padding box of the table the element is in.

I think this properly covers cases where, frex, you have the abspos
between two table-rows.

~TJ

Received on Monday, 17 May 2010 19:35:48 UTC