CSS scroll snap
Das CSS scroll snap Modul bietet Eigenschaften, die es Ihnen ermöglichen, das Scroll- und Schwenkverhalten durch die Definition von Schnappstellungen zu steuern. Inhalte können in Position „einrasten“, während der Benutzer überlaufende Inhalte innerhalb eines Scroll-Containers scrollt und dadurch für Seiteneinteilung und Scroll-Positionierung sorgt.
Dieses Modul enthält die Scroll-Container-Eigenschaften scroll-padding
, um den optimalen Betrachtungsbereich während „scroll-into-view“-Operationen anzupassen. Es umfasst auch scroll-margin
und scroll-alignment
, die auf die Kinder des Scroll-Containers gesetzt werden, um den visuellen Bereich der Kinder anzupassen, wenn dieses Kind in den Sichtbereich gescrollt wird, sowie eine Eigenschaft, um das Scrollen auf einzelne Kinder zu stoppen.
Scroll snap in Aktion
Um das Scroll-Snapping im unten stehenden Feld zu sehen, scrollen Sie auf und ab sowie nach links und rechts durch das Raster von 45 nummerierten Kästchen im scrollbaren Ansichtsfenster. Klicken Sie auf „Abspielen“ im untenstehenden Beispiel, um den Quellcode zu sehen oder im MDN Playground zu bearbeiten:
Mit Scroll-Snap wird eines der nummerierten Kästchen, zu dem Sie scrollen, in der Position einrasten. Das anfängliche CSS lässt das nummerierte Kästchen in der Mitte des Ansichtsfensters einrasten. Verwenden Sie die Schieberegler, um die Block- und Inline-Schnapppositionen zu ändern.
Durch die Verwendung von Schnappeigenschaften können Sie das Vorbeiscrollen an einem Element, in diesem Fall einem nummerierten Kästchen, gestatten oder blockieren. Wählen Sie die Checkbox „Vorbeiscrollen an Kästchen verhindern“ aus, um alle Scrollaktionen auf das Scrollen zu einem benachbarten Kästchen zu beschränken.
Um Scroll-Snapping mit regulärem Scrollen zu vergleichen, aktivieren Sie die Checkbox „Snapping deaktivieren“ und versuchen Sie erneut zu scrollen.
Referenz
Eigenschaften auf Containern
Eigenschaften auf Kindern
Ereignisse
scrollsnapchange
Experimentellscrollsnapchanging
Experimentell
Schnittstellen
SnapEvent
ExperimentellSnapEvent.snapTargetBlock
ExperimentellSnapEvent.snapTargetInline
Experimentell
Leitfäden
- Grundlegende Konzepte von CSS scroll snap
-
Ein Überblick und Beispiele zu den Funktionen von CSS scroll snap.
- Verwendung von Scroll-Snap-Ereignissen
-
Ein Leitfaden zur Verwendung der
scrollsnapchanging
undscrollsnapchange
Scroll-Snap-Ereignisse, die ausgelöst werden, wenn der Browser feststellt, dass ein neues Schnappziel ansteht oder ausgewählt wurde.
Verwandte Konzepte
:target
Pseudo-Klasseoverflow
CSS-Eigenschaft- Element
scroll()
Methode - Element
scrollBy()
Methode - Element
scrollIntoView()
Methode - Element
scrollTo()
Methode - Element
scroll
Ereignis - Element
scrollend
Ereignis scrollbar
ARIA-Rolle- Scroll-Container Glossareintrag
Spezifikationen
Specification |
---|
CSS Scroll Snap Module Level 1 |
CSS Scroll Snap Module Level 2 |
Siehe auch
- CSS overflow Modul
- CSS scrollbars styling Modul
- CSS scroll anchoring Modul
- Nur mit Tastatur steuerbare Scrollbereiche auf adrianroselli.com (2022)
- Scroll-Snap-Beispiele auf CodePen (2022)
- Gut kontrolliertes Scrollen mit CSS scroll snap auf web.dev (2021)
- Praktische Anwendung von CSS scroll snapping auf CSS-Tricks (2020)
- CSS scroll snap auf 12 Days of Web (2019)