Wat is CSS Scroll-State Query Generator?
Een scroll-state container query is een CSS-functie waarmee u elementen kunt stylen op basis van de scroll-status van een container. In plaats van JavaScript te gebruiken om de scrollpositie te detecteren en klassen te schakelen, schrijft u een @container scroll-state(...) query die automatisch stijlen toepast wanneer elementen zijn geklikt, vastzitten of wanneer een container scrollbaar is. Dit maakt scroll-gestuurde UI mogelijk zoals actieve carrouselindicatoren en sticky header-schaduwen zonder JavaScript.
Snel antwoord
Gebruik CSS scroll-state() queries binnen @container-regels om elementen te stylen op basis van scrollpositie zonder JavaScript. Richt op geklikte, vastzittende, scrollbare of overlopende toestanden. Vereist container-type: scroll-state en Chrome 135+. Voeg een JS-fallback toe voor cross-browser ondersteuning.
Last updated: 2026-05-28
Beperkingen
- Scroll-state queries vereisen Chrome 135+ en worden nog niet ondersteund in Firefox of Safari. Zorg altijd voor een JavaScript-fallback voor productiegebruik.
- De container moet container-type: scroll-state hebben ingesteld om scroll-state queries te laten werken. Dit is een apart container-type van size of inline-size queries.
- Er is slechts een beperkt aantal scroll-statussen beschikbaar: snapped, stuck, scrollable en overflowing. Complexe scroll-gestuurde animaties vereisen nog steeds JavaScript of scroll-gestuurde animaties (@scroll-timeline).
Sources:MDN Web Docs · W3C Specifications · jquery.app on GitHub
Zo gebruik je deze tool
- Selecteer de scroll-status om op te richten: snapped (actief snap-item), stuck (sticky element) of scrollable (container met overflow).
- Stel de doel-CSS-selector en de scroll-container selector in.
- Kies de stijlwijziging om toe te passen wanneer de status actief is (dekking, schaal, rand, achtergrond).
- Kopieer de CSS, demo-HTML en optionele JavaScript-fallbacksnippet.
Waarvoor je het kunt gebruiken
- Markeer het huidige geklikte carrouselitem met volledige dekking terwijl andere worden gedimd.
- Voeg een schaduw toe aan een sticky header alleen wanneer deze aan de bovenkant van de viewport vastzit.
- Style een scrollbaar paneel anders wanneer het overflow heeft versus wanneer alle inhoud past.