Skip to content

Stack

Stack

Layout component for arranging children in a vertical or horizontal stack with consistent spacing.

Import

import Stack from '@primitivekit/svelte/Stack.svelte';

Basic Usage

<Stack>Content</Stack>

Props

No props available.

Customization

The Stack component supports CSS variables for complete customization:

<Stack style={{
  '--stack-bg-color': '#007bff',
  '--stack-text-color': '#ffffff'
}}>Custom</Stack>

Design Tokens

The following design tokens are available for customization:

  • --stack-gap
  • --stack-direction
  • --stack-align-items
  • --stack-justify-content
  • --horizontal
  • --vertical
  • --align-start
  • --align-center
  • --align-end
  • --align-stretch
  • … and 7 more

Accessibility

The Stack component is fully accessible and follows WCAG 2.1 AA standards:

  • ✅ Semantic HTML elements
  • ✅ Keyboard accessible
  • ✅ Focus visible indicator
  • ✅ Proper ARIA attributes
  • ✅ Screen reader compatible
  • ✅ Touch target size (44x44px minimum)
  • ✅ Color contrast compliance

Keyboard Navigation

KeyAction
TabMove focus to/from component

Related Components

  • Card - Container component for grouping related content with optional header, body, and footer sections.
  • Container - Layout component for constraining content width and centering content on the page.
  • Grid - Layout component for creating responsive grid layouts with customizable columns and gaps.
  • Space - Layout component for adding consistent spacing between elements.
  • Divider - Visual separator component for dividing content sections horizontally or vertically.

See Also