Toggle Sidebar B
AppearanceLight & dark mode D

Split Text

Splits text into characters / words for staggered entrance animation.

Default

Every prop is wired to the controls underneath. Any change replays the animation, and the refresh button replays it on demand.

Light previewReplay previewOpen in new tab

Hello, you!

Customize

Split Type
Ease
Stagger Delay50ms
Duration1.3s

API Reference

SplitText

PropTypeDefaultDescription
tagstring"p"HTML tag to render: "h1", "h2", "h3", "h4", "h5", "h6", "p".
textstring""The text content to animate.
delaynumber50Delay between animations for each letter (in ms).
durationnumber1.25Duration of each letter animation (in seconds).
easestring"power3.out"GSAP easing function for the animation.
splitTypestring"chars"Split type: "chars", "words", "lines", or "words, chars".
fromobject{ opacity: 0, y: 40 }Initial GSAP properties for each letter/word.
toobject{ opacity: 1, y: 0 }Target GSAP properties for each letter/word.
thresholdnumber0.1Intersection threshold to trigger the animation (0-1).
rootMarginstring"-100px"Root margin for the ScrollTrigger.
textAlignstring"center"Text alignment: "left", "center", "right", etc.

SplitText events

PropTypeDefaultDescription
letter-animation-complete() => void-Emitted when all animations complete.

Accessibility

Keyboard shortcuts and ARIA behavior.

  • GSAP SplitText adds aria-label to the element and hides the split pieces from assistive tech, so the text is read once.