Re: [css-transforms] CSS3D breaks with opacity flattening

On 22/09/16 12:38 PM, Rik Cabanier wrote:
>
>
> I disagree :-) I think it's the worst choice since it renders visibly 
> incorrect.
>
> To demonstrate the issue, I've update the sample so it's more obvious: 
> https://codepen.io/adobe/pen/QKdjKb and I've also attached a 
> screenshot. You can hover over the left square to remove some opacity.
> With your patch, content in an opacity group introduces extra render 
> passes so things are drawn first in reverse DOM order and then on the 
> 3d plane.
> The codepen markup is as follows:
>
>     <div id="wrapper">
>       <div id="addalpha">
>         <div id="sq1">Square1</div>
>         <div id="sq2">Square2</div>
>       </div>
>       <div id="sq3">Square3</div>
>     </div>
>
> In the firefox nightly browser, sq3 is drawn first followed by the 
> opacity group of sq1 and sq2.
> If we put sq3 first in the dom, it will be drawn last.
>
> I wish there was an easier solution to this problem that's always 
> consistent. Does anyone know how this problem is fixed in 3d applications?
That's fine, but you also think it's sufficiently better on these cases 
(where there is no 'right' behaviour and we're just picking which one is 
the least-wrong) that it makes up for breaking uses cases like my 3d cube?

I personally think it's worth getting the defined use cases perfect, and 
accepting slightly worse behaviour for the undefined cases like yours, 
but we might have to agree to disagree here.

- Matt

Received on Thursday, 22 September 2016 01:33:07 UTC