mirror of
https://github.com/twbs/bootstrap.git
synced 2025-08-20 12:21:35 +02:00
Add hstack and vstack helpers
This commit is contained in:
82
site/content/docs/5.0/helpers/stacks.md
Normal file
82
site/content/docs/5.0/helpers/stacks.md
Normal file
@@ -0,0 +1,82 @@
|
||||
---
|
||||
layout: docs
|
||||
title: Stacks
|
||||
description: Shorthand helpers that build on top of our flexbox utilities to make component layout faster and easier than ever.
|
||||
group: helpers
|
||||
toc: true
|
||||
---
|
||||
|
||||
Stacks offer a shortcut for applying a number of flexbox properties to quickly and easily create layouts in Bootstrap. All credit for the concept and implementation goes to the open source [Pylon project](https://almonk.github.io/pylon/).
|
||||
|
||||
## Vertical
|
||||
|
||||
Use `.vstack` to create vertical layouts. Stacked items are full-width by default. Use `.gap-*` utilities to add space between items.
|
||||
|
||||
{{< example >}}
|
||||
<div class="vstack gap-3">
|
||||
<div class="bg-light border">First item</div>
|
||||
<div class="bg-light border">Second item</div>
|
||||
<div class="bg-light border">Third item</div>
|
||||
</div>
|
||||
{{< /example >}}
|
||||
|
||||
## Horizontal
|
||||
|
||||
Use `.hstack` for horizontal layouts. Stacked items are vertically centered by default and only take up their necessary width. Use `.gap-*` utilities to add space between items.
|
||||
|
||||
{{< example >}}
|
||||
<div class="hstack gap-3">
|
||||
<div class="bg-light border">First item</div>
|
||||
<div class="bg-light border">Second item</div>
|
||||
<div class="bg-light border">Third item</div>
|
||||
</div>
|
||||
{{< /example >}}
|
||||
|
||||
Using horizontal margin utilities like `.ms-auto` as spacers:
|
||||
|
||||
{{< example >}}
|
||||
<div class="hstack gap-3">
|
||||
<div class="bg-light border">First item</div>
|
||||
<div class="bg-light border ms-auto">Second item</div>
|
||||
<div class="bg-light border">Third item</div>
|
||||
</div>
|
||||
{{< /example >}}
|
||||
|
||||
<div class="d-flex" style="height: 200px;">
|
||||
<div class="vr"></div>
|
||||
</div>
|
||||
|
||||
{{< example >}}
|
||||
<div class="hstack gap-3">
|
||||
<div class="bg-light border">First item</div>
|
||||
<div class="bg-light border ms-auto">Second item</div>
|
||||
<div class="vr"></div>
|
||||
<div class="bg-light border">Third item</div>
|
||||
</div>
|
||||
{{< /example >}}
|
||||
|
||||
## Examples
|
||||
|
||||
Use `.vstack` to stack buttons and other elements:
|
||||
|
||||
{{< example >}}
|
||||
<div class="vstack gap-2 col-md-5 mx-auto">
|
||||
<button type="button" class="btn btn-secondary">Save changes</button>
|
||||
<button type="button" class="btn btn-outline-secondary">Cancel</button>
|
||||
</div>
|
||||
{{< /example >}}
|
||||
|
||||
Create an inline form with `.hstack`:
|
||||
|
||||
{{< example >}}
|
||||
<div class="hstack gap-3">
|
||||
<input class="form-control me-auto" type="text" placeholder="Add your item here...">
|
||||
<button type="button" class="btn btn-secondary">Submit</button>
|
||||
<div class="vr"></div>
|
||||
<button type="button" class="btn btn-outline-danger">Reset</button>
|
||||
</div>
|
||||
{{< /example >}}
|
||||
|
||||
## Sass
|
||||
|
||||
{{< scss-docs name="stacks" file="scss/helpers/_stacks.scss" >}}
|
Reference in New Issue
Block a user