Accessibility

Slider semantics

The slider wrapper is rendered with role="slider" and tabIndex={0} so it can receive keyboard focus, and exposes:

Keyboard

Focus the slider and press ArrowLeft or ArrowRight to move between slides. Navigation only happens while the slider is focused, so multiple sliders on a page respond independently. Arrow-key moves fire onSlideStart and onSlideComplete just like drags do.

Pass navigateOnArrowKeys={false} to disable arrow-key navigation entirely — useful for sliders nested inside other keyboard-driven UI.

Pointer

Slides use touch-action: pan-y pinch-zoom so drag gestures work without the browser panning horizontally, while still allowing vertical page scrolling and pinch-to-zoom on the slide content. The default context menu is suppressed during a drag.