CSS
css/limited-needs-supports
CSS that is not Baseline yet (anchor positioning) or only just became Baseline (scroll-driven animations) sits in @supports with a fallback.
moderatestaticfe-css-modern
Why
A browser drops declarations it does not understand. A menu placed only with position-anchor and anchor() ends up at the corner of the page in a browser without anchor positioning, and an animation bound only to a scroll timeline runs once on load where scroll timelines are missing. On 2026-11-11 anchor positioning was not Baseline and scroll-driven animations had been Baseline for two weeks, so many visitors still lack them.
Fix
Write a working fallback first (a plain position: absolute placement, no animation), then the new feature inside @supports (anchor-name: --a) or @supports (animation-timeline: scroll()). Put motion inside prefers-reduced-motion: no-preference as well. Recheck the Baseline status before you remove the fallback.
Examples
/* bad */
.menu { position: absolute; position-anchor: --menu; top: anchor(bottom); }
/* good */
.menu { position: absolute; top: 100%; }
@supports (anchor-name: --a) { .menu { position-anchor: --menu; top: anchor(bottom); } }Sources
Facts
- Id
css/limited-needs-supports- Severity
- moderate
- Check
- static checked in the source by
audit - Applies to
cssscsslesshtmlvuesvelteastro- Taught by the skill
fe-css-modernModern CSS features- Since version
- 0.1.0
Read it in the terminal
npx github:dawidolko/frontend-skills explain css/limited-needs-supports