CSS scroll snap
Das CSS scroll snap Modul bietet Eigenschaften, mit denen Sie das Schwenk- und Scrollverhalten durch Festlegen von Schnapp-Positionen steuern können. Der Inhalt kann in die entsprechende Position geschnappt werden, während der Benutzer überlaufenden Inhalt in einem scroll container scrollt, was eine Paginierung und Scroll-Positionierung ermöglicht.
Dieses Modul umfasst die scroll-padding
Eigenschaften des scroll container
, um den optimalen Betrachtungsbereich beim Scrollen in den Ansichtsmodus anzupassen. Es beinhaltet auch scroll-margin
und scroll-alignment
, die auf die Kinder des scroll container
gesetzt werden, um den visuellen Bereich der Kinder anzupassen, wenn dieses Kind in die Ansicht gescrollt wird, sowie eine Eigenschaft, um das Scrollen bei einzelnen Kindern zu erzwingen.
Scroll snap in Aktion
Um das Scrollen in der Box unten im Einsatz zu sehen, scrollen Sie durch das Raster aus 45 nummerierten Boxen im scrollbaren Viewport nach oben und unten sowie nach links und rechts. Klicken Sie auf "Play" im Beispiel unten, um den Quellcode im MDN Playground anzusehen oder zu bearbeiten:
Mit Scroll Snap wird eine der nummerierten Boxen, zu der Sie scrollen, an ihrer Position einrasten. Das anfängliche CSS lässt die nummerierte Box in die Mitte des Viewports einrasten. Nutzen Sie die Schieberegler, um die Block- und Inline-Schnapp-Positionen zu ändern.
Durch die Verwendung von Schnappeigenschaften können Sie das Scrollen über ein Element, in diesem Fall eine nummerierte Box, erlauben oder blockieren. Wählen Sie das Kontrollkästchen "Scrollen über Boxen verhindern", um alle Scrollaktionen auf das Scrollen zu einer angrenzenden Box zu beschränken.
Um das Scrollen mit Einrasten mit dem normalen Scrollen zu vergleichen, aktivieren Sie das Kontrollkästchen "Einrasten 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 CSS scroll snap Funktionen.
- Verwendung von Scroll-Snap-Ereignissen
-
Ein Leitfaden zur Verwendung der
scrollsnapchanging
undscrollsnapchange
Scroll-Snap-Ereignisse, die ausgelöst werden, wenn der Browser bestimmt, 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 Glossarbegriff
Spezifikationen
Specification |
---|
CSS Scroll Snap Module Level 1 |
CSS Scroll Snap Module Level 2 |
Siehe auch
- CSS overflow Modul
- CSS scrollbars styling Modul
- Nur mit der Tastatur scrollbare Bereiche auf adrianroselli.com (2022)
- Scroll Snap Beispiele auf CodePen (2022)
- Gut kontrolliertes Scrollen mit CSS scroll snap auf web.dev (2021)
- Praktisches CSS-Scroll-Snapping auf CSS-Tricks (2020)
- CSS scroll snap auf 12 Days of Web (2019)