Scroll anchoring adjusts the scroll position to prevent visible jumps (or "reflows") when content changes above the viewport.
Scroll anchoring introduces CSS "overflow-anchor" as an opt-out for developers.
Reflows from ads or image loads create a jarring user experience. This is a particular source of frustration on mobile devices with slower network connections.
It is possible for web authors to construct pages that avoid such reflows (the AMP Project
is an example of this). However, most sites don't do this, so scroll anchoring is desirable as a user-agent intervention
Scroll anchoring has been proposed and discussed on the WICG
. There is some interest from Mozilla
Relatively high. In particular, pages that make dynamic changes in scroll event handlers can be adversely affected (example
Ongoing technical constraints
Will this feature be supported on all six Blink platforms?
OWP launch tracking bug
Link to entry on the feature dashboard
Requesting approval to ship?
No (behind runtime flag).