CSS scroll snap
Das CSS scroll snap Modul bietet Eigenschaften, mit denen Sie das Verhalten von Bildläufen und Scrollen durch das Definieren von Anhaltepositionen steuern können. Inhalte können in Position gebracht werden, während der Benutzer überfließende Inhalte innerhalb eines Scroll Containers scrollt, was Paging und Scroll-Positionierung ermöglicht.
Dieses Modul umfasst die Eigenschaften für den Scroll-Container scroll-padding, um die optimale Ansichtsregion während der Scroll-in-Sicht-Operationen anzupassen. Es enthält 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 die Sicht gescrollt wird, sowie eine Eigenschaft, die das Anhalten des Scrollens bei einzelnen Kindern erzwingt.
Scroll snap in Aktion
Um das Scroll-Snapping im untenstehenden Kasten zu sehen, scrollen Sie nach oben-und-unten und links-und-rechts durch das Raster von 45 nummerierten Kästchen im scrollbaren Ansichtsbereich. Klicken Sie auf "Play" im untenstehenden Beispiel, um es zu sehen oder den Quellcode im MDN Playground zu bearbeiten:
Mit dem Scroll Snap wird eines der nummerierten Kästchen, zu denen Sie scrollen, fest an einem Platz arretiert. Das anfängliche CSS bringt das nummerierte Kästchen in die Mitte des Ansichtsbereichs. Verwenden Sie die Schieberegler, um die Block- und Inline-Anhaltepositionen zu ändern.
Durch die Verwendung von Anhalteeigenschaften können Sie das Scrollen an einem Element, wie einem nummerierten Kästchen, erlauben oder blockieren. Wählen Sie das Kontrollkästchen "Verhindern des Scrollens über Kästchen" aus, um alle Scroll-Aktionen auf das Scrollen zu einem angrenzenden Kästchen zu beschränken.
Um das Scroll-Snapping mit normalem Scrollen zu vergleichen, aktivieren Sie das Kontrollkästchen "Snapping deaktivieren" und versuchen Sie es erneut.
Referenz
>Eigenschaften auf Containern
Eigenschaften auf Kindern
Ereignisse
scrollsnapchangeExperimentellscrollsnapchangingExperimentell
Schnittstellen
SnapEventExperimentellSnapEvent.snapTargetBlockExperimentellSnapEvent.snapTargetInlineExperimentell
Leitfäden
- Grundlegende Konzepte des CSS scroll snap
-
Ein Überblick und Beispiele für CSS scroll snap Features.
- Verwendung von Scroll Snap-Ereignissen
-
Ein Leitfaden zur Nutzung der
scrollsnapchangingundscrollsnapchangeScroll Snap-Ereignisse, die ausgelöst werden, wenn der Browser bestimmt, dass ein neues Snap-Ziel aussteht oder ausgewählt wurde.
Verwandte Konzepte
:targetPseudo-KlasseoverflowCSS-Eigenschaft- Element
scroll()Methode - Element
scrollBy()Methode - Element
scrollIntoView()Methode - Element
scrollTo()Methode - Element
scrollEreignis - Element
scrollendEreignis scrollbarARIA-Rolle- Scroll Container Glossarbegriff
Spezifikationen
| Specification |
|---|
| CSS Scroll Snap Module Level 1> |
| CSS Scroll Snap Module Level 2> |
Siehe auch
- CSS Überlauf Modul
- CSS Scrollbalken-Styling Modul
- CSS scroll anchoring Modul
- Tastatur-gesteuerte Scrollbereiche auf adrianroselli.com (2022)
- Scroll Snap-Beispiele auf CodePen (2022)
- Praktisches CSS Scroll Snapping auf CSS-Tricks (2020)
- CSS scroll snap auf 12 Days of Web (2019)
- Gut kontrolliertes Scrollen mit CSS scroll snap auf web.dev (2018)