Макеты и Сетки layoutstackspacing
Auto-Stack (Vertical)
Вертикальный стек элементов с единообразными отступами и выравниванием.
Живое превью
Auto-Stack (Vertical)
Использование
Скопируйте и вставьте этот код на вашу страницу Astro:
astro
---
import { Auto-Stack(Vertical) } from 'astro-component-kit';
---
<VerticalStack gap="1.5rem">Content</VerticalStack> ---
import { Auto-Stack(Vertical) } from 'astro-component-kit';
---
<VerticalStack gap="1.5rem">Content</VerticalStack> Ручная установка
Если вы не используете пакет npm, создайте файл и вставьте следующий код: src/components/lib/Auto-Stack(Vertical).astro:
astro
---
/**
* VerticalStack — A flexible vertical layout with configurable gap spacing.
*
* Stacks children vertically with consistent spacing between them.
* Ideal for grouping related content like form fields, card lists, or text blocks.
*
* @param {string} gap - Space between children. Default: '1.5rem'.
* @param {string} className - Additional CSS class to apply.
*
* @example
* ```astro
* <VerticalStack gap="2rem">
* <Card title="First" />
* <Card title="Second" />
* <Card title="Third" />
* </VerticalStack>
* ```
*/
interface Props {
gap?: string;
className?: string;
}
const { gap = '1.5rem', className = '' } = Astro.props;
---
<div class:list={['vertical-stack', className]} style={`--stack-gap: ${gap}`}>
<slot />
</div>
<style>
.vertical-stack {
display: flex;
flex-direction: column;
gap: var(--stack-gap);
}
</style> ---
/**
* VerticalStack — A flexible vertical layout with configurable gap spacing.
*
* Stacks children vertically with consistent spacing between them.
* Ideal for grouping related content like form fields, card lists, or text blocks.
*
* @param {string} gap - Space between children. Default: '1.5rem'.
* @param {string} className - Additional CSS class to apply.
*
* @example
* ```astro
* <VerticalStack gap="2rem">
* <Card title="First" />
* <Card title="Second" />
* <Card title="Third" />
* </VerticalStack>
* ```
*/
interface Props {
gap?: string;
className?: string;
}
const { gap = '1.5rem', className = '' } = Astro.props;
---
<div class:list={['vertical-stack', className]} style={`--stack-gap: ${gap}`}>
<slot />
</div>
<style>
.vertical-stack {
display: flex;
flex-direction: column;
gap: var(--stack-gap);
}
</style> Краткая информация
- Категория
- Макеты и Сетки
- Имя файла
Auto-Stack(Vertical).astro- Зависимости
- Нет — чистый Astro + CSS
- Теги
- layoutstackspacing