Source code
Revision control
Copy as Markdown
Other Tools
# The middle stacking context has a non-zero origin but no transform, which
# triggers the translate-only reference frame insertion path. That reference
# frame must inherit the preserve-3d transform-style, otherwise it becomes
# a flattening boundary inside the preserve-3d hierarchy established by the
# outer reference frame — and the inner rotate-x(60) + translate(0, 0, 200)
# chain gets its z output zeroed, producing the wrong screen position.
---
root:
items:
-
type: "stacking-context"
transform: rotate-y(1)
transform-style: preserve-3d
items:
-
bounds: [100, 100, 0, 0]
type: "stacking-context"
transform-style: preserve-3d
items:
-
type: "stacking-context"
transform: rotate-x(60)
transform-style: preserve-3d
items:
-
type: "stacking-context"
transform: translate(0, 0, 200)
transform-style: preserve-3d
items:
-
bounds: [0, 0, 150, 150]
type: rect
color: green