viewmotion

Presets

viewmotion ships with 8 built-in presets. Each preset is a composable CSS @keyframes animation.

Built-in presets

NameEffectProperties animated
fadeOpacity 0 → 1opacity
fade-upFade + translate up 24pxopacity, transform
fade-downFade + translate down 24pxopacity, transform
slide-leftTranslate from left 32pxopacity, transform
slide-rightTranslate from right 32pxopacity, transform
scale-inFade + scale from 92%opacity, transform
zoom-outFade + scale from 108%opacity, transform
blur-inFade + blur from 6pxopacity, filter

Usage

Specify a preset via the preset property in the data-motion attribute:

<div data-motion='{"preset":"fade-up"}'>...</div>
<div data-motion='{"preset":"scale-in","delay":200}'>...</div>
<div data-motion='{"preset":"blur-in","duration":800}'>...</div>

Customizing preset parameters

Each preset accepts optional delay and duration overrides:

ParameterTypeDefaultDescription
presetstringThe animation preset name
delaynumber0Delay before animation starts (ms)
durationnumber600Animation duration (ms)