Button group
Groups a series of buttons together on a single line.
Basic example
<!-- Solid button group -->
<div class="btn-group" role="group" aria-label="Solid button group">
<button type="button" class="btn btn-primary">Left</button>
<button type="button" class="btn btn-primary">Middle</button>
<button type="button" class="btn btn-primary">Right</button>
</div>
<!-- Outline button group -->
<div class="btn-group" role="group" aria-label="Outline button group">
<button type="button" class="btn btn-outline-primary">Left</button>
<button type="button" class="btn btn-outline-primary">Middle</button>
<button type="button" class="btn btn-outline-primary">Right</button>
</div>
// Solid button group
.btn-group(role="group", aria-label="Solid button group")
button(type="button").btn.btn-primary
| Left
button(type="button").btn.btn-primary
| Middle
button(type="button").btn.btn-primary
| Right
// Outline button group
.btn-group(role="group", aria-label="Outline button group")
button(type="button").btn.btn-outline-primary
| Left
button(type="button").btn.btn-outline-primary
| Middle
button(type="button").btn.btn-outline-primary
| Right
Button toolbar
<!-- Toolbar example -->
<div class="btn-toolbar" role="toolbar" aria-label="Settings toolbar">
<div class="btn-group me-2 mb-2" role="group" aria-label="Settings group">
<button type="button" class="btn btn-dark btn-icon">
<i class="ci-settings"></i>
</button>
<button type="button" class="btn btn-secondary btn-icon">
<i class="ci-arrows-vertical me-1"></i>
A
</button>
<button type="button" class="btn btn-secondary btn-icon">
<i class="ci-list"></i>
</button>
<button type="button" class="btn btn-secondary btn-icon">
<i class="ci-exit-full-screen"></i>
</button>
</div>
<div class="btn-group me-2 mb-2" role="group" aria-label="Apply settings">
<button type="button" class="btn btn-info">
<i class="ci-check me-2"></i>
Apply
</button>
</div>
<div class="btn-group mb-2" role="group" aria-label="Delete settings">
<button type="button" class="btn bg-faded-danger btn-icon">
<i class="ci-trash text-danger"></i>
</button>
</div>
</div>
<!-- Pagination example -->
<div class="btn-toolbar" role="toolbar" aria-label="Pagination">
<div class="btn-group me-2 mb-2" role="group" aria-label="First group">
<button type="button" class="btn btn-outline-secondary">1</button>
<button type="button" class="btn btn-outline-secondary">2</button>
<button type="button" class="btn btn-outline-secondary">3</button>
</div>
<div class="btn-group me-2 mb-2" role="group" aria-label="Second group">
<button type="button" class="btn btn-outline-secondary">4</button>
<button type="button" class="btn btn-outline-secondary">5</button>
</div>
<div class="btn-group mb-2" role="group" aria-label="Third group">
<button type="button" class="btn btn-outline-secondary">6</button>
</div>
</div>
// Toolbar example
.btn-toolbar(role="toolbar", aria-label="Settings toolbar")
.btn-group.me-2.mb-2(role="group", aria-label="Settings group")
button(type="button").btn.btn-dark.btn-icon
i.ci-settings
button(type="button").btn.btn-secondary.btn-icon
i.ci-arrows-vertical.me-1
| A
button(type="button").btn.btn-secondary.btn-icon
i.ci-list
button(type="button").btn.btn-secondary.btn-icon
i.ci-exit-full-screen
.btn-group.me-2.mb-2(role="group", aria-label="Apply settings")
button(type="button").btn.btn-info
i.ci-check.me-2
| Apply
.btn-group.mb-2(role="group", aria-label="Delete settings")
button(type="button").btn.bg-faded-danger.btn-icon
i.ci-trash.text-danger
// Pagination example
.btn-toolbar(role="toolbar", aria-label="Pagination")
.btn-group.me-2.mb-2(role="group", aria-label="First group")
button(type="button").btn.btn-pill.btn-outline-secondary
| 1
button(type="button").btn.btn-pill.btn-outline-secondary
| 2
button(type="button").btn.btn-pill.btn-outline-secondary
| 3
.btn-group.me-2.mb-2(role="group", aria-label="Second group")
button(type="button").btn.btn-pill.btn-outline-secondary
| 4
button(type="button").btn.btn-pill.btn-outline-secondary
| 5
.btn-group.mb-2(role="group", aria-label="Third group")
button(type="button").btn.btn-pill.btn-outline-secondary
| 6
Sizing
<div class="btn-group btn-group-lg" role="group" aria-label="...">...</div>
<div class="btn-group" role="group" aria-label="...">...</div>
<div class="btn-group btn-group-sm" role="group" aria-label="...">...</div>
.btn-group.btn-group-lg(role="group" aria-label="...")
| ...
.btn-group(role="group" aria-label="...")
| ...
.btn-group.btn-group-sm(role="group" aria-label="...")
| ...
Nested dropdown
<!-- Button group with nested dropdown -->
<div class="btn-group" role="group" aria-label="Button group with nested dropdown">
<button type="button" class="btn btn-primary">1</button>
<button type="button" class="btn btn-primary">2</button>
<div class="btn-group" role="group">
<button type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Dropdown
</button>
<div class="dropdown-menu">
<a href="#" class="dropdown-item">Dropdown link</a>
<a href="#" class="dropdown-item">Dropdown link</a>
<a href="#" class="dropdown-item">Dropdown link</a>
</div>
</div>
</div>
<!-- Button group with nested dropdown -->
<div class="btn-group" role="group" aria-label="Button group with nested dropdown">
<button type="button" class="btn btn-outline-secondary">1</button>
<button type="button" class="btn btn-outline-secondary">2</button>
<div class="btn-group" role="group">
<button type="button" class="btn btn-outline-secondary dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Dropdown
</button>
<div class="dropdown-menu">
<a href="#" class="dropdown-item">Dropdown link</a>
<a href="#" class="dropdown-item">Dropdown link</a>
<a href="#" class="dropdown-item">Dropdown link</a>
</div>
</div>
</div>
// Button group with nested dropdown
.btn-group(role="group", aria-label="Button group with nested dropdown")
button(type="button").btn.btn-primary
| 1
button(type="button").btn.btn-primary
| 2
.btn-group(role='group')
button(type="button", data-bs-toggle="dropdown", aria-haspopup="true", aria-expanded="false").btn.btn-primary.dropdown-toggle Dropdown
.dropdown-menu
a(href="#").dropdown-item
| Dropdown link
a(href="#").dropdown-item
| Dropdown link
a(href="#").dropdown-item
| Dropdown link
// Button group with nested dropdown
.btn-group(role="group", aria-label="Button group with nested dropdown")
button(type="button").btn.btn-outline-secondary
| 1
button(type="button").btn.btn-outline-secondary
| 2
.btn-group(role='group')
button(type="button", data-bs-toggle="dropdown", aria-haspopup="true", aria-expanded="false").btn.btn-outline-secondary.dropdown-toggle
| Dropdown
.dropdown-menu
a(href="#").dropdown-item
| Dropdown link
a(href="#").dropdown-item
| Dropdown link
a(href="#").dropdown-item
| Dropdown link