W3C home > Mailing lists > Public > public-fx@w3.org > July to September 2016

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

From: Matt Woodrow <mwoodrow@mozilla.com>
Date: Wed, 21 Sep 2016 09:46:51 +1200
To: Rik Cabanier <cabanier@gmail.com>
Cc: "Tab Atkins Jr." <jackalmage@gmail.com>, /#!/JoePea <trusktr@gmail.com>, Chris Harrelson <chrishtr@google.com>, Simon Fraser <simon.fraser@apple.com>, "public-fx@w3.org" <public-fx@w3.org>
Message-ID: <bdcf4cc0-a857-3ebc-bb4c-a132c42e0379@mozilla.com>

On 20/09/16 11:10 PM, Rik Cabanier wrote:
>
> What other options? The one that Safari has implemented?
> That one relies on their render tree which is unspecified.
Right, but that's what the authors in this thread seem to want. My 
suggestion gives rendering very close to the Safari/old-Chrome/Firefox 
behaviour (which is looking to be important for web-compat), but doesn't 
break opacity grouping.

>
> As Tab said, there are few case where you'd actually want the 
> "screaming skull" effect.
> If you DO want it, it's easy to apply opacity using a selector.

If you want the "screaming skull" effect, then you can use a selector. 
If you don't (but you don't want flattening either), then this seems 
like the only option.


>
> Can you state what is under defined in the spec? The document's been 
> in limbo for so many years and it would be great if some progress 
> could be made.
It's getting better, I don't have specific examples from the ED except 
that no UA actually implements what it says. Previously, opacity wasn't 
mentioned at all which is how we got to this discussion, and depth 
sorting/splitting wasn't specified.

>
> What makes opacity so special? (Or are you proposing that other 
> effects also inherit this behavior?)
> "naturally" is also ambivalent. I find the current Chrome behavior 
> more natural.
Opacity is special because it doesn't really matter if you apply it 
before or after the transform. Filter might also fall into this 
category, but most of the others (mix-blend, clipping) seem like their 
position in the preserve-3d really matter.

I guess natural is a poor choice of words. I was thinking of the use 
case where you take a set of elements to form an 'object' (say a 3d 
cube), apply opacity to that (true, group opacity) and then position it 
within the outer scene (say a whole set of cubes that rotate in a 
carousel). As far as I can tell, there's no way to achieve this effect 
with the current spec and my suggestion makes it possible.

- Matt
Received on Tuesday, 20 September 2016 21:47:25 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:49:57 UTC