W3C home > Mailing lists > Public > www-style@w3.org > October 2010

RE: [css3-2d-transforms] Transformed object acts as containing block for fixed positioned descendants

From: Sylvain Galineau <sylvaing@microsoft.com>
Date: Fri, 29 Oct 2010 22:39:52 +0000
To: Tab Atkins Jr. <jackalmage@gmail.com>, Simon Fraser <smfr@me.com>
CC: "www-style@w3.org list" <www-style@w3.org>
Message-ID: <045A765940533D4CA4933A4A7E32597E2879C78F@TK5EX14MBXC111.redmond.corp.microsoft.com>
> From: Tab Atkins Jr. [mailto:jackalmage@gmail.com]
> Sent: Tuesday, October 12, 2010 5:08 PM
> To: Simon Fraser
> Cc: Sylvain Galineau; www-style@w3.org list
> Subject: Re: [css3-2d-transforms] Transformed object acts as containing
> block for fixed positioned descendants
> 
> On Tue, Oct 12, 2010 at 4:40 PM, Simon Fraser <smfr@me.com> wrote:
> > On Oct 12, 2010, at 3:18 PM, Sylvain Galineau wrote:
> >
> >> In the introduction, it is said that:
> >>
> >>   # Any value other than 'none' for the transform results in the
> creation of both
> >>   # a stacking context and a containing block. The object acts as a
> containing block
> >>   # for fixed positioned descendants.
> >>
> >> I think we did agree earlier that this kind of normative statement
> should not be just intro material.
> >> But I was more curious as to the intended meaning of the latter
> statement ? First the spec says
> >> the transform creates a stacking context and containing block.
> What's the extra bit about fixed positioned
> >> descendants for ?
> >
> > Imagine:
> >
> > <div style="transform: rotate(45deg)">
> >  <div style="positon: fixed"></div>
> > </div>
> >
> > When you scroll, what happens to the fixed position div?
> >
> > What this last sentence is saying is that the fixed position div is
> no longer positioned relative to the viewport,
> > but relative to its transformed ancestor. Anything else would be very
> hard to implement, and to specify.
> 
> I'm not sure, but I think I'd expect the fixpos to not transform at
> all, precisely because it's fixed.  Absposes would still transform,
> because they're guaranteed to have a containing block equal to or
> within the transformed element.

So what you expect is that fixed positioned elements transform only when
the transform is applied to them. Correct ?

I don't find that unreasonable given the semantics of position:fixed.
Curious about what others think ?


Received on Friday, 29 October 2010 22:40:26 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:20:33 GMT