Can you remind me what the current behavior is without the remembered scroll 
offset? I am wondering if there's any scenario where changing this could break 
existing anchor pos usage.

> Will this feature be supported on all six Blink platforms (Windows, Mac, 
> Linux, ChromeOS, Android, and Android WebView)?
> No

Any reason this can't ship on all platforms?

-- Dan

From: Morten Stenshorne <msten...@chromium.org>
Sent: Tuesday, March 4, 2025 11:41 PM
To: blink-dev <blink-dev@chromium.org>
Subject: [EXTERNAL] [blink-dev] Intent to Ship: CSS anchor positioning 
remembered scroll offset

Contact emails
msten...@chromium.org<mailto:msten...@chromium.org>


Explainer
None


Specification
https://drafts.csswg.org/css-anchor-position-1/#scroll


Summary

Add support for the concept of "remembered scroll offset" - see 
https://drafts.csswg.org/css-anchor-position-1/#scroll When a positioned 
element has a default anchor, and is tethered to this anchor at one edge, and 
against the original containing block at the other edge, the scroll offset will 
be taken into account when it comes to sizing the element. This way a developer 
can use all visible space (using `position-area`) for the anchored element when 
the document is scrolled at a given scroll offset. In order to avoid layout 
(resizing the element) every time the document is scrolled (which is undesired 
behavior, and also bad for performance), what will be used is a so-called 
"remembered scroll offset", rather than always using the current scroll offset. 
The remembered scroll offset is updated at a so-called "anchor recalculation 
point", which is either: - When the positioned element is initially displayed - 
When a different position option (`position-try-fallbacks`) is chosen



Blink component
Blink>Layout<https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3ELayout%22>


TAG review
None


TAG review status
Pending


Risks



Interoperability and Compatibility

Anchor positioning isn't shipping in any other engine yet.


Gecko: Positive (https://github.com/mozilla/standards-positions/issues/794) 
Anchor positioning not implemented in Firefox.

WebKit: Support (https://github.com/WebKit/standards-positions/issues/167) 
Anchor positioning not implemented in Safari.

Web developers: No signals

Other signals:


WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it 
has potentially high risk for Android WebView-based applications?

None



Debuggability

None



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, 
ChromeOS, Android, and Android WebView)?
No


Is this feature fully tested by 
web-platform-tests<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?
Yes

https://wpt.fyi/results/css/css-anchor-position?label=master&label=experimental&aligned
 
https://wpt.fyi/results/css/css-anchor-position/position-area-scrolling-005.html?label=master&label=experimental&aligned



Flag name on about://flags



Finch feature name
CSSAnchorRememberedScrollOffset


Requires code in //chrome?
False


Tracking bug
https://issues.chromium.org/issues/373874012


Estimated milestones
Shipping on desktop
135
Shipping on Android
135
Shipping on WebView
135



Anticipated spec changes

Open questions about a feature may be a source of future web compat or interop 
issues. Please list open issues (e.g. links to known github issues in the 
project for the feature specification) whose resolution may introduce web 
compat/interop risk (e.g., changing to naming or structure of the API in a 
non-backward-compatible way).
None


Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/4710507824807936?gate=5315183922380800


Links to previous Intent discussions
Intent to Prototype: 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAKWZFm5%3D2_bAxBDiD%3DzDaxbZOx7SZiZvEc5tmwCkUfTxevkphw%40mail.gmail.com


This intent message was generated by Chrome Platform 
Status<https://chromestatus.com/>.
--
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
blink-dev+unsubscr...@chromium.org<mailto:blink-dev+unsubscr...@chromium.org>.
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAKWZFm6f2VOKrnSMcMCsDak41x-mij1LkDGVpYshEn9jBE7Tmw%40mail.gmail.com<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAKWZFm6f2VOKrnSMcMCsDak41x-mij1LkDGVpYshEn9jBE7Tmw%40mail.gmail.com?utm_medium=email&utm_source=footer>.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CH4PR00MB232981664E2B5B5EDF3897EEC5CA2%40CH4PR00MB2329.namprd00.prod.outlook.com.

Reply via email to