Page MenuHomePhabricator

Support motion preferences in GrowthExperiments
Open, Needs TriagePublic

Description

Respecting users' reduced motion preferences could help making the interface less distracting for some users, and reduce battery usage slightly on mobile devices. It is also WCAG success criteria 2.3.3.

Browser support for is decent; it's not supported on IE, Opera Mini and some more exotic browsers but graceful degradation on those browsers should be OK. No browser currently lets the user set this preference directly, but they tend to inherit it from the OS - major OS systems usually have some accessibility option along the lines of "disable animations".

Supporting it seems really easy. Just wrap all non-essential animations and transitions into @media (prefers-reduced-motion: no-preference) { ... } and check window.matchMedia('(prefers-reduced-motion: reduce)').matches any time we'd use smooth scrolling in Javascript.