#1182: WG Revision: CSS Anchor Positioning Level 1

Visit on Github

Opened Dec 23, 2025

Specification

https://www.w3.org/TR/css-anchor-position-1/

Explainer

https://ishadeed.com/article/anchor-positioning/ is a pretty good intro at this point

Links

  • The WG's request for this TAG review: https://github.com/w3c/csswg-drafts/issues/13265
  • TAG review of the previous version of this specification, if any: https://github.com/w3ctag/design-reviews/issues/848
  • A description of what has changed since our previous review: Introduced position-area and position-visibility properties, introduced anchor-center alignment, renamed anchor-default to position-anchor, redesigned the fallback mechanism to use new position-try-* properties, and made many adjustments to layout details and algorithms. In short, the API has been thoroughly redesigned though the anchor() functions remain mostly intact.

The specification

Where and by whom is the work is being done?

  • GitHub repo: https://github.com/w3c/csswg-drafts/issues
  • Primary contacts:
    • Elika J. Etemad (@fantasai), Apple, co-editor, co-implementer
    • Tab Atkins, Jr. (@tabatkins), Google, co-editor
  • Organization/project driving the specification: Google, Apple
  • This work is being funded by: Google, Apple, Mozilla, Igalia
  • Primary standards group developing this feature: CSSWG

Feedback so far

You should also know that...

We're asking for a re-review of the spec because it has gone through substantial changes since the FPWD. At this point we have some detailed technical issues to work through, but expect the spec to go to CR largely in this form. The TAG may waive this review if you feel it is not needed.

Interesting points to consider from the TAG perspective are the points of integration with HTML, see in particular the position-anchor property as part of determining the anchor box. We also ended up requiring the position-area property to resolve auto margin values to zero because this was the only way to address confusing interactions with the HTML default UA stylesheet for popovers in a backwards-compatible way. (It had been noted that these rules could cause integration problems when they were being developed, but anchor positioning wasn't developed enough to rely on it back then, so HTML pushed ahead with what they had.)

One of Mozilla's main concerns with this spec is the Layout & Style interleaving requirement for resolving anchor() values. See https://www.w3.org/TR/css-anchor-position-1/#anchor-pos This aspect was left out of Interop 2025 testing for that reason.

<!-- Content below this is maintained by @w3c-tag-bot -->

Track conversations at https://tag-github-bot.w3.org/gh/w3ctag/design-reviews/1182

Discussions