Bootstrap - Buttons & Button Groups in Bootstrap 5.
1. Button Basics
Bootstrap 5 comes with pre-styled buttons. Use the btn
class along with a variant class to style them.
Syntax:
<button type="button" class="btn btn-primary">Primary</button>
<button type="button" class="btn btn-secondary">Secondary</button>
<button type="button" class="btn btn-success">Success</button>
<button type="button" class="btn btn-danger">Danger</button>
<button type="button" class="btn btn-warning">Warning</button>
<button type="button" class="btn btn-info">Info</button>
<button type="button" class="btn btn-light">Light</button>
<button type="button" class="btn btn-dark">Dark</button>
-
All buttons have rounded corners by default.
-
btn-outline-*
variants give an outlined style.
<button class="btn btn-outline-primary">Outlined Primary</button>
2. Button Sizes
-
.btn-lg
→ Large button -
.btn-sm
→ Small button -
Default size if no modifier is used.
<button class="btn btn-primary btn-lg">Large</button>
<button class="btn btn-secondary btn-sm">Small</button>
3. Button States
-
Active state:
.active
-
Disabled state:
.disabled
for<a>
ordisabled
attribute for<button>
<button class="btn btn-primary active" type="button">Active</button>
<button class="btn btn-secondary" type="button" disabled>Disabled</button>
4. Button Types
-
<button>
→ standard clickable button -
<a>
→ link styled as button -
<input type="submit">
→ form submission
<a href="#" class="btn btn-success">Link Button</a>
<input type="submit" class="btn btn-danger" value="Submit">
5. Button Groups
Button groups let you group multiple buttons together horizontally or vertically.
Horizontal Button Group
<div class="btn-group" role="group" aria-label="Basic example">
<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>
Vertical Button Group
<div class="btn-group-vertical" role="group">
<button type="button" class="btn btn-secondary">Top</button>
<button type="button" class="btn btn-secondary">Middle</button>
<button type="button" class="btn btn-secondary">Bottom</button>
</div>
6. Toggle Buttons
Bootstrap 5 supports button toggles for checkboxes/radios:
<div class="btn-group" role="group">
<input type="radio" class="btn-check" name="options" id="option1" autocomplete="off" checked>
<label class="btn btn-outline-primary" for="option1">Option 1</label>
<input type="radio" class="btn-check" name="options" id="option2" autocomplete="off">
<label class="btn btn-outline-primary" for="option2">Option 2</label>
</div>
-
btn-check
hides the input,label.btn
acts as the visible button. -
Works for radio (single selection) and checkbox (multiple selections).
7. Button Toolbars
Combine multiple button groups in a toolbar:
<div class="btn-toolbar" role="toolbar" aria-label="Toolbar with button groups">
<div class="btn-group me-2" role="group">
<button type="button" class="btn btn-primary">1</button>
<button type="button" class="btn btn-primary">2</button>
</div>
<div class="btn-group" role="group">
<button type="button" class="btn btn-secondary">3</button>
<button type="button" class="btn btn-secondary">4</button>
</div>
</div>
-
me-2
adds spacing between groups. -
You can mix different button sizes and variants.
Summary
-
Buttons:
btn
+ variant (primary
,secondary
,success
, etc.) -
Sizes:
btn-sm
,btn-lg
-
States:
active
,disabled
-
Groups:
btn-group
(horizontal),btn-group-vertical
-
Toggles:
btn-check
+label.btn
-
Toolbars: group multiple button groups with spacing utilities