Comment #6 on issue 130339 by ccame...@chromium.org: Chrome ignores 3rd
parameter of -webkit-transform-origin
The bug here appears to be with Safari, rather than Chrome.
In particular, if the point <x,y,z> is specified by
-webkit-transform-origin, and the transformation matrix T is specified by
-webkit-transform, then the overall transformation should be:
[1 0 0 x] [1 0 0 -x]
[0 1 0 y] * T * [0 1 0 -y]
[0 0 1 z] [0 0 0 -z]
[0 0 0 1] [0 0 0 1]
It appears that Safari is not performing the final left-multiplication to
re-center the content at the specified origin after the transform is
I've attached a stripped-down version of the originally provided file,
along with its rendering in Chrome and Safari. The top image shows that an
identity transformation with non-zero Z-origin has a non-identity effect on
Safari. The middle image shows an ordinary rotateY(180deg). The bottom
image verifies that a non-zero Z-origin correctly affects a rotateY(180deg)
transformation on Chrome.
Marking works-as-intended and will follow up with a bug report to Safari.
perspective-test-ex.html 1.9 KB
ex-chrome.png 75.5 KB
ex-safari.png 97.3 KB