Stack
Stack
Layout component for arranging children in a vertical or horizontal stack with consistent spacing.
Import
import { Stack } from '@primitivekit/vanilla';Basic Usage
const stack = new Stack({ /* options */ });
document.body.appendChild(stack.element);Props
No props available.
Customization
The Stack component supports CSS variables for complete customization:
const stack = new Stack({
style: {
'--stack-bg-color': '#007bff',
'--stack-text-color': '#ffffff'
}
});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
| Key | Action |
|---|---|
Tab | Move 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.