Перейти к основному содержанию Перейти к навигации по документации
Добавлено в v5.1 На GitHub

Стеки

Сокращенные помощники, которые строятся на основе наших утилит flexbox, чтобы сделать компоновку компонентов быстрее и проще, чем когда-либо.

На этой странице

Стеки предлагают ярлык для применения ряда свойств flexbox для быстрого и легкого создания макетов в Bootstrap. Вся заслуга в концепции и реализации принадлежит проекту Pylon.

Внимание! Недавно в Safari была добавлена поддержка утилит gap с flexbox, поэтому рассмотрите возможность проверки предполагаемой поддержки браузера. С макетом сетки не должно возникнуть проблем. Подробнее.

Вертикальный

Используйте .vstack для создания вертикальных макетов. По умолчанию сложенные элементы имеют полную ширину. Используйте утилиты .gap-* для добавления пробелов между элементами.

Первый элемент
Второй элемент
Третий элемент
html
<div class="vstack gap-3">
  <div class="p-2">Первый элемент</div>
  <div class="p-2">Второй элемент</div>
  <div class="p-2">Третий элемент</div>
</div>

Горизонтальный

Используйте .hstack для горизонтальных макетов. Сложенные элементы по умолчанию центрируются по вертикали и занимают только необходимую ширину. Используйте утилиты .gap-* для добавления пробелов между элементами.

Первый элемент
Второй элемент
Третий элемент
html
<div class="hstack gap-3">
  <div class="p-2">Первый элемент</div>
  <div class="p-2">Второй элемент</div>
  <div class="p-2">Третий элемент</div>
</div>

Использование утилит с горизонтальным полем, таких как .ms-auto в качестве разделителей:

Первый элемент
Второй элемент
Третий элемент
html
<div class="hstack gap-3">
  <div class="p-2">Первый элемент</div>
  <div class="p-2 ms-auto">Второй элемент</div>
  <div class="p-2">Третий элемент</div>
</div>

И с вертикальными правилами:

Первый элемент
Второй элемент
Третий элемент
html
<div class="hstack gap-3">
  <div class="p-2">Первый элемент</div>
  <div class="p-2 ms-auto">Второй элемент</div>
  <div class="vr"></div>
  <div class="p-2">Третий элемент</div>
</div>

Примеры

Используйте .vstack, чтобы складывать кнопки и другие элементы:

html
<div class="vstack gap-2 col-md-5 mx-auto">
  <button type="button" class="btn btn-secondary">Сохранить изменения</button>
  <button type="button" class="btn btn-outline-secondary">Отменить</button>
</div>

Создайте встроенную форму с помощью .hstack:

html
<div class="hstack gap-3">
  <input class="form-control me-auto" type="text" placeholder="Добавьте свой элемент сюда..." aria-label="Добавьте свой элемент сюда...">
  <button type="button" class="btn btn-secondary">Отправить</button>
  <div class="vr"></div>
  <button type="button" class="btn btn-outline-danger">Сбросить</button>
</div>

CSS

.hstack {
  display: flex;
  flex-direction: row;
  align-items: center;
  align-self: stretch;
}

.vstack {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-self: stretch;
}