W3C home > Mailing lists > Public > www-style@w3.org > February 2008

Re: [CSS2.1 position:relative] Blocks Contained in Inline Relative.

From: David Hyatt <hyatt@apple.com>
Date: Thu, 07 Feb 2008 19:35:18 -0600
To: Alex Mogilevsky <alexmog@exchange.microsoft.com>
Cc: "L. David Baron" <dbaron@dbaron.org>, "www-style@w3.org" <www-style@w3.org>
Message-id: <746CF077-AA20-4850-90F6-1268B61D16BF@apple.com>

This is a bug in Safari.  It has to do with how we implemented blocks- 
inside-inlines, and so we incorrectly lose the relative position offset.

On Feb 7, 2008, at 2:51 PM, Alex Mogilevsky wrote:

>
> Thanks, that makes it perfectly clear.
>
> Perhaps this special text should be referenced from 'position'  
> property?
>
> --Alex
>
> -----Original Message-----
> From: L. David Baron [mailto:dbaron@dbaron.org]
> Sent: Thursday, February 07, 2008 12:35 PM
> To: www-style@w3.org
> Cc: Alex Mogilevsky
> Subject: Re: [CSS2.1 position:relative] Blocks Contained in Inline  
> Relative.
>
> On Thursday 2008-02-07 11:59 -0800, Alex Mogilevsky wrote:
>> When a block with a static position is contained in an inline block  
>> with "position:relative", should the relative offset apply to it?
>>
>> 9.3.1 http://www.w3.org/TR/CSS21/visuren.html#choose-position
>> Doesn't have any special cases for blocks within relative inlines.  
>> And position doesn't inherit.
>>
>> 10.1. http://www.w3.org/TR/CSS21/visudet.html#containing-block- 
>> details
>> Clearly says that the relative inline is clearly not the containing  
>> block for nested blocks.
>
> These sections aren't really relevant here because another section
> of the spec describes how the rendering tree (of boxes) is modified
> when a block occurs within an inline.  In particular
> http://www.w3.org/TR/2007/CR-CSS21-20070719/visuren.html#anonymous-block-level
> says:
>
> # When an inline box contains a block box, the inline box (and its
> # inline ancestors within the same line box) are broken around the
> # block. The line boxes before the break and after the break are
> # enclosed in anonymous boxes, and the block box becomes a sibling
> # of those anonymous boxes. When such an inline box is affected by
> # relative positioning, the relative positioning also affects the
> # block box.
>
> This explicitly answers your question about relative positioning
> (although without that statement it would be pretty clearly the
> opposite, since the box is not contained inside the inline).
>
> -David
>
> --
> L. David Baron                                 http://dbaron.org/
> Mozilla Corporation                       http://www.mozilla.com/
>
Received on Friday, 8 February 2008 01:35:33 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 27 April 2009 13:55:01 GMT