mdn / mdn/browser-compat-data

rotateX() rotateY() - unstable on version 13 to 15 (current) - workaround exits

Open
#14,435 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

browser:safari data:css
Dominant language
JSON
Stars
5.8k
Forks
2.6k
Avg merge
1d 21h
Merged PRs (30d)
186

Description

What information was incorrect, unhelpful, or incomplete?

rotateX() and rotateY() is not well supported in Safari version 13 to 15. (current) It has a regression bug. (I also sent a bug report to the Safari Team)

What did you expect to see?

I would expect to see a note in rotateX() rotateY() in Safari and Safari on iOS mentioning the workaround fix.

Did you test this? If so, how?

Tests: https://bafkreicfarv4knb6lpaauvodb7f5tpfjfz2s5uyl4254rud2u7ihyndl5y.ipfs.dweb.link/
mirror: https://ipfs.io/ipfs/bafkreicfarv4knb6lpaauvodb7f5tpfjfz2s5uyl4254rud2u7ihyndl5y
mirror2: https://pastebin.com/4snr8UrM

I added tilt.js to a customer website and it had bugged out in his iPad. As I don't own any Apple device, I had to use browserstack to debug it. It turns out that if there is a single element {position: sticky; z-index: -1;} in the page, it somewhat creates a conflict with the rotateX() rotateY(). The way I found to fix it is by adding -webkit-transform: translateZ(0) to the rotated object parent.

Someone else got a similar problem, but somewhat different on StackOverFlow: https://stackoverflow.com/questions/18146511/bug-in-css3-rotatey-transition-on-safari
I don't have the patience to debug that problem, but the solution to that was the same. (-webkit-transform: translateZ(0))
Seeing their problem doesn't have a position: sticky object, it makes me think there are many things that could trigger the bug.

Can you link to any release notes, bugs, pull requests, or MDN pages related to this?

I think this bug could be related to #6637

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the rotateX() and rotateY() compatibility entries in the browser compatibility data and inspect how Safari and Safari on iOS notes are represented. Add the reported workaround note if it fits the project’s data format, then run the relevant data validation checks to confirm the entries are valid.

Written by the indexing model from the issue text.

Assessment

Tech stack
css
Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.