Bug 229141

Summary: CSS transform interoperability of parent versus containing block for 3D Rendering Contexts and perspective
Product: WebKit Reporter: L. David Baron <dbaron>
Component: Layout and RenderingAssignee: Simon Fraser (smfr) <simon.fraser>
Status: NEW ---    
Severity: Normal CC: bfulgham, mrobinson, simon.fraser, thorton, webkit-bug-importer, zalan
Priority: P2 Keywords: InRadar
Version: Safari 14   
Hardware: All   
OS: All   
URL: https://docs.google.com/document/d/1hPOMT0Uza9fxnSwAOWx2W175VTdXBzRg1-706VBe4ik/edit
Bug Depends on: 232618    
Bug Blocks:    

Description L. David Baron 2021-08-16 08:26:23 PDT
I'm in the process of shipping some changes in Chromium that will mostly align with Gecko's behavior in a few ways:

 1. for handling of transform-style, make decisions about when to extend 3D Rendering Contexts based only on the DOM parent/child relationships, rather than considering containing block relationships (e.g., for absolute or fixed position, or for block-within-inline) or considering which nodes have transforms or not.

 2. for handling of the perspective property, apply the perspective only to DOM children, rather than considering the containing block hierarchy or applying to deeper descendants if the intermediate ones don't have certain transform properties set.

There's also a somewhat unrelated and pretty small change:

 3. Makes transform-style: preserve-3d cause an element to be a containing block for position: absolute and position: fixed elements even if a grouping property causes flattening of the 3D scene.

These changes are described in substantially more detail in https://docs.google.com/document/d/1hPOMT0Uza9fxnSwAOWx2W175VTdXBzRg1-706VBe4ik/edit , which also links to relevant tests in web-platform-tests.


I wanted to get a WebKit bug on file about these differences since we're now in a situation where Gecko and Chromium are becoming more compatible, but WebKit is different from them.  (That said, I'm aware there are a bunch of *other* differences in preserve-3d in WebKit that make this pretty confusing to test/understand, although I think the underlying behavior differences still apply here.)
Comment 1 Radar WebKit Bug Importer 2021-08-23 08:27:19 PDT
<rdar://problem/82245314>