- From: Matt Woodrow <mwoodrow@mozilla.com>
- Date: Tue, 27 Sep 2016 14:07:49 +1300
- To: Tien-Ren Chen <trchen@chromium.org>
- Cc: public-fx@w3.org, Simon Fraser <simon.fraser@apple.com>, "Tab Atkins Jr." <jackalmage@gmail.com>, Rik Cabanier <cabanier@gmail.com>
On 27/09/16 1:12 PM, Tien-Ren Chen wrote: > I'm particularly worrying about this case: > > <style> div { transform-style: preserve-3d; } </style> > <div> > A > <div style="transform:translateZ(0);">B</div> > <div style="position:relative; z-index:0;">C</div> > </div> > > If we don't make the distinction between 2D/3D (i.e. no plane / new > plane), the transition between translateZ(-epsilon), translateZ(0), > and translateZ(epsilon) could be tricky. IMO B should be popped into > its own plane, and perform depth-sorting against plane AC as a whole. What would be the intended result of depth sorting in this case? They both have 0 depth, no z-index and now the content order is undefined since AC is both before and after B. I prefer having B transition to being between A and C while the Z translation is 0. > > Another weird case: > > <style> div { transform-style: preserve-3d; } </style> > <div id="A" style="background:some_image; translateZ(0);"> > Foreground > <div id="B" style="transform:translateZ(0); position:relative; > z-index:-1;">Stuck in middle?</div> > </div> > > Should B to stack in between the background/foreground of A because it > has negative z-index? I think the sensible thing to do is to pop it to > its own plane. I'm not sure I understand this case fully. It makes sense to me that B would be in the middle, z-index applies within the current stacking context, putting B before Foreground. - Matt
Received on Tuesday, 27 September 2016 01:08:30 UTC