- From: Andrew Fedoniouk <news@terrainformatica.com>
- Date: Fri, 23 Mar 2007 21:04:30 -0800
- To: "Mats Palmgren" <mats.palmgren@bredband.net>, <www-style@w3.org>
Thanks Mats, ----- Original Message ----- From: "Mats Palmgren" <mats.palmgren@bredband.net> To: <www-style@w3.org> Sent: Thursday, March 22, 2007 7:47 PM Subject: Re: [CSS 2.1] child-> position:absolute, parent -> overflow:scroll > > Andrew Fedoniouk wrote: >> Question is: shall 'baz' be scrollable together with the content of >> the 'bar'? > > No, the containing block is <foo>. > I think too but please see below. > If you had used top:auto and/or left:auto for <baz> instead > then the answer would be yes, because then the UA should use the > "static position" for the auto value(s). > Note that position:fixed boxes are excluded, they never follow > the scrolling because of the text: > "all scrollable boxes should be assumed to be scrolled to their origin" > in CSS 2.1 10.3.7: > http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width > > >> I'd be happy if someone will point me on the part of the spec that >> explains that special role of overflowed elements in regards of >> positioned children. > > There is no such special role, as far as I know. > > Note in particular the exception in CSS 2.1 11.1.1: > "It affects the clipping of all of the element's content except any > descendant elements (and their respective content and descendants) > whose containing block is the viewport or an ancestor of the element." > http://www.w3.org/TR/CSS21/visufx.html#propdef-overflow > > > https://bugzilla.mozilla.org/show_bug.cgi?id=303676 > has some testcases and comments you may find useful. > > Thanks for the link, here is one more: http://www.terrainformatica.com/w3/abspos.htm This dynamic test uses three blocks: <A abs-positioned> <B scrollable> <C abs-positioned > According to the spec block C shall not move when B will be scrolled. Results: Firefox: containing block of C is A (correct) so it does not move the block C (correct), but position of block C is not correct. IE: containing block of A is B (not correct) so block is moving. Opera: containing block is A (correct) but it moves the block C while scrolling block B (not correct) Andrew Fedoniouk. http://terrainformatica.com
Received on Saturday, 24 March 2007 04:05:06 UTC