[css-transforms] Should transform-style: preserve-3d create containing block for positioned descendants?

There is disagreement among implementations about whether "transform-style: preserve-3d” creates containing block for positions descendants.

The working draft[1] says in the prose:

> A 3D rendering context is established by a a transformable element whose computed value for transform-style is preserve-3d, and which itself is not part of a 3D rendering context. Note that such an element is always a containing block.


but we don't explicitly call this out under the transform-style property. The new spec text doesn't require that preserve-3d create containing block, and logically I see no reason why it should. (I’m also not sure why perspective has to create a containing block.)

WebKit/Blink have this behavior because of a bug[2]. Firefox has this behavior too, possibly because they copied WebKit behavior, or went by the spec prose. IE 11 does not have this behavior.

Testcase:
http://jsbin.com/budadutude/1/edit <http://jsbin.com/budadutude/1/edit>

Bug:
https://www.w3.org/Bugs/Public/show_bug.cgi?id=27566

Thoughts?
Simon

[1] http://www.w3.org/TR/2013/WD-css-transforms-1-20131126/ <http://www.w3.org/TR/2013/WD-css-transforms-1-20131126/>
[2] https://bugs.webkit.org/show_bug.cgi?id=138122

Received on Thursday, 11 December 2014 18:48:30 UTC