Prisma saysScroll snap makes a container lock to items as you scroll — carousels and slide decks.
Set scroll-snap-type: x mandatory on a scroll container and scroll-snap-align: center on its children, and scrolling snaps cleanly to each item. It powers carousels, full-page slide sections, and horizontal card rows — smooth native behavior with no JavaScript.
Power-ups you unlock
scroll-snap-type on the container
scroll-snap-align on children sets the snap point
Native carousels and slide decks, no JS
mandatory always snaps; proximity is gentler
Jank the Janitor attacks — common mistakes
Snap on the wrong axis
mandatory trapping users on tall content
Forgetting overflow + a fixed size on the container
Boss battleBuild a horizontal snapping carousel of three full-width panels.