Skip to content
LSD Framework
Component · primitive

Carousel

Native scroll-snap horizontals, fade-stack, multi-up, with-thumbs, auto-advance. One markup contract, six shapes — keyboard, touch, pause-on-hover, all free.

v1 · scroll-snap + arrows + dots

Classic horizontal

CSS scroll-snap drives the motion. Arrows and dots scroll programmatically. Keyboard: ← → at any slide.

Orion
Nebula
Galaxy
Aurora
Quasar
v2 · auto-advance + pause-on-hover

Self-driving

Advances every 3 seconds. Hovering the track pauses; un-hovering resumes. Loops at the end.

Pulsar
Vega
Sirius
Rigel
v3 · fade transition

Cross-fade · stacked

Slides occupy the same grid cell and fade in/out instead of sliding. data-active drives visibility.

Sunrise
Midday
Dusk
Night
v4 · 3-up

Multiple items visible

Per-view scales with the container: 1 → 2 → 3 at 520/800. Arrows scroll one viewport width.

A
B
C
D
E
F
G
H
v5 · with thumbnails

Thumbs strip below

Click a thumb to jump. The active thumb mirrors the visible slide. Pairs well with product galleries.

Shot 1
Shot 2
Shot 3
Shot 4
v6 · touch + keyboard

Pointer-events swipe

Swipe the track with a finger, mouse, or stylus — same pointer event chain. Arrow keys move when the track is focused.

← swipe →
Two
Three
Four

Usage

Root: <div class="lsd-car" data-car>. Inside: .lsd-car__track with N .lsd-car__slide children. Prev/next/dots/thumbs wire up automatically.

Emits lsd:car:change with { index } after every transition.