scroll-snap-type
Utilities for controlling how strictly snap points are enforced in a snap container.
Source: https://tailwindcss.com/guide/scroll-snap-type
Quick reference
Class | Styles |
---|---|
snap-none | scroll-snap-type: none; |
snap-x | scroll-snap-type: x var(--tw-scroll-snap-strictness); |
snap-y | scroll-snap-type: y var(--tw-scroll-snap-strictness); |
snap-both | scroll-snap-type: both var(--tw-scroll-snap-strictness); |
snap-mandatory | --tw-scroll-snap-strictness: mandatory; |
snap-proximity | --tw-scroll-snap-strictness: proximity; |
Examples
Horizontal scroll snapping
Use the snap-x
utility to enable horizontal scroll snapping:
html
<div class="snap-x ...">
<div class="snap-center ...">
<img src="/img/vacation-01.jpg" />
</div>
<!-- ... -->
</div>
Vertical scroll snapping
Use the snap-y
utility to enable vertical scroll snapping:
html
<div class="snap-y ...">
<div class="snap-center ...">
<img src="/img/vacation-01.jpg" />
</div>
<!-- ... -->
</div>
Both axis scroll snapping
Use the snap-both
utility to enable scroll snapping on both axes:
html
<div class="snap-both ...">
<div class="snap-center ...">
<img src="/img/vacation-01.jpg" />
</div>
<!-- ... -->
</div>
Mandatory scroll snapping
Use the snap-mandatory
utility to enforce strict scroll snapping:
html
<div class="snap-x snap-mandatory ...">
<div class="snap-center ...">
<img src="/img/vacation-01.jpg" />
</div>
</div>
Proximity scroll snapping
Use the snap-proximity
utility to enable proximity-based scroll snapping:
html
<div class="snap-x snap-proximity ...">
<div class="snap-center ...">
<img src="/img/vacation-01.jpg" />
</div>
</div>
Disabling scroll snapping
Use the snap-none
utility to disable scroll snapping:
html
<div class="snap-none ...">
<div class="snap-center ...">
<img src="/img/vacation-01.jpg" />
</div>
</div>
Responsive design
Prefix a scroll-snap-type
utility with a breakpoint variant like md:
to only apply the utility at medium screen sizes and above:
html
<div class="snap-none md:snap-x ...">
<!-- ... -->
</div>
Learn more about using variants in the variants documentation.