Skip to content
PixeloreUI
Feedback

Skeleton

A pulsing block that holds layout space while content loads. Compose multiple Skeletons to match the shape of the real content.

Default

Composing a card placeholder

Accessibility notes

  • Sets role=“status” with aria-busy=“true” and aria-live=“polite” — screen readers announce a loading state without interrupting.
  • The opacity pulse is driven by Motion and stops entirely under prefers-reduced-motion — the skeleton becomes a static dimmed block.
  • For long-running loads, swap the role to a more specific live region announcing progress (e.g. aria-busy on the parent + aria-live on a sibling status node).