Bootstrap 5
Bootstrap 5 cheat sheet covering grid system, utility classes, components, JavaScript plugins, and responsive design with code examples.
Sign in to mark items as known and track your progress.
Sign inGetting Started
Installation and setup for Bootstrap 5
Installation Methods
Different ways to include Bootstrap in your project
<!-- CDN (Quick Start) -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
<!-- NPM Installation -->
npm install bootstrap
// Import in JavaScript
import 'bootstrap/dist/css/bootstrap.min.css'
import 'bootstrap/dist/js/bootstrap.bundle.min.js'Basic HTML Template
Starter template with Bootstrap 5
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bootstrap 5 Template</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<div class="container">
<h1>Hello, Bootstrap!</h1>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>Layout & Grid
Bootstrap grid system and layout utilities
Grid System
12-column responsive grid layout
<!-- Basic Grid -->
<div class="container">
<div class="row">
<div class="col-md-4">Column 1</div>
<div class="col-md-4">Column 2</div>
<div class="col-md-4">Column 3</div>
</div>
</div>
<!-- Responsive Columns -->
<div class="row">
<div class="col-12 col-md-6 col-lg-4">Responsive</div>
<div class="col-12 col-md-6 col-lg-4">Columns</div>
<div class="col-12 col-md-12 col-lg-4">Example</div>
</div>Flexbox Utilities
Flexbox layout utilities
<!-- Display Flex -->
<div class="d-flex">Flexbox container</div>
<div class="d-inline-flex">Inline flexbox</div>
<!-- Direction -->
<div class="d-flex flex-row">Horizontal (default)</div>
<div class="d-flex flex-column">Vertical</div>
<div class="d-flex flex-row-reverse">Horizontal reversed</div>
<div class="d-flex flex-column-reverse">Vertical reversed</div>
<!-- Justify Content -->
<div class="d-flex justify-content-start">Left</div>
<div class="d-flex justify-content-center">Center</div>
<div class="d-flex justify-content-end">Right</div>
<div class="d-flex justify-content-between">Space between</div>
<div class="d-flex justify-content-around">Space around</div>
<div class="d-flex justify-content-evenly">Space evenly</div>Typography
Text utilities and typography classes
Headings & Display
Typography heading styles
<!-- Headings -->
<h1>h1. Bootstrap heading</h1>
<h2>h2. Bootstrap heading</h2>
<h3>h3. Bootstrap heading</h3>
<h4>h4. Bootstrap heading</h4>
<h5>h5. Bootstrap heading</h5>
<h6>h6. Bootstrap heading</h6>
<!-- Heading Classes -->
<p class="h1">h1 styling on paragraph</p>
<p class="h2">h2 styling on paragraph</p>
<!-- Display Headings -->
<h1 class="display-1">Display 1</h1>
<h1 class="display-2">Display 2</h1>
<h1 class="display-3">Display 3</h1>
<h1 class="display-4">Display 4</h1>
<h1 class="display-5">Display 5</h1>
<h1 class="display-6">Display 6</h1>Text Utilities
Text alignment, transformation, and styling
<!-- Text Alignment -->
<p class="text-start">Start aligned text</p>
<p class="text-center">Center aligned text</p>
<p class="text-end">End aligned text</p>
<!-- Text Transform -->
<p class="text-lowercase">LOWERCASED TEXT</p>
<p class="text-uppercase">uppercased text</p>
<p class="text-capitalize">capitalized text</p>
<!-- Font Weight & Style -->
<p class="fw-bold">Bold text</p>
<p class="fw-normal">Normal weight</p>
<p class="fw-light">Light weight</p>
<p class="fst-italic">Italic text</p>
<p class="fst-normal">Normal style</p>Colors & Backgrounds
Color system and background utilities
Color System
Bootstrap color palette and utilities
<!-- Text Colors -->
<p class="text-primary">Primary</p>
<p class="text-secondary">Secondary</p>
<p class="text-success">Success</p>
<p class="text-danger">Danger</p>
<p class="text-warning">Warning</p>
<p class="text-info">Info</p>
<!-- Background Colors -->
<div class="bg-primary text-white">Primary background</div>
<div class="bg-secondary text-white">Secondary</div>
<div class="bg-success text-white">Success</div>
<div class="bg-danger text-white">Danger</div>
<div class="bg-warning">Warning</div>
<div class="bg-info">Info</div>Spacing
Margin and padding utilities
Spacing Utilities
Margin and padding classes
<!-- Padding -->
<div class="p-0">No padding</div>
<div class="p-1">Padding 1 (0.25rem)</div>
<div class="p-2">Padding 2 (0.5rem)</div>
<div class="p-3">Padding 3 (1rem)</div>
<div class="p-4">Padding 4 (1.5rem)</div>
<div class="p-5">Padding 5 (3rem)</div>
<!-- Margin -->
<div class="m-0">No margin</div>
<div class="m-1">Margin 1</div>
<div class="m-2">Margin 2</div>
<div class="m-auto">Auto margin</div>Components
Core Bootstrap components
Buttons
Button styles and variations
<!-- Button Styles -->
<button class="btn btn-primary">Primary</button>
<button class="btn btn-secondary">Secondary</button>
<button class="btn btn-success">Success</button>
<button class="btn btn-danger">Danger</button>
<button class="btn btn-warning">Warning</button>
<button class="btn btn-info">Info</button>
<!-- Button Sizes -->
<button class="btn btn-primary btn-lg">Large</button>
<button class="btn btn-primary">Default</button>
<button class="btn btn-primary btn-sm">Small</button>Cards
Card component for content containers
<!-- Basic Card -->
<div class="card">
<img src="..." class="card-img-top" alt="...">
<div class="card-body">
<h5 class="card-title">Card title</h5>
<p class="card-text">Card content</p>
<a href="#" class="btn btn-primary">Go somewhere</a>
</div>
</div>
<!-- Card with Header/Footer -->
<div class="card">
<div class="card-header">Header</div>
<div class="card-body">
<h5 class="card-title">Title</h5>
<p class="card-text">Content</p>
</div>
<div class="card-footer">Footer</div>
</div>Forms
Form controls and layouts
<!-- Basic Form -->
<form>
<div class="mb-3">
<label for="email" class="form-label">Email</label>
<input type="email" class="form-control" id="email">
</div>
<div class="mb-3">
<label for="password" class="form-label">Password</label>
<input type="password" class="form-control" id="password">
</div>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
<!-- Form Grid -->
<form class="row g-3">
<div class="col-md-6">
<label class="form-label">First Name</label>
<input type="text" class="form-control">
</div>
<div class="col-md-6">
<label class="form-label">Last Name</label>
<input type="text" class="form-control">
</div>
</form>Navigation
Navigation components
<!-- Basic Navbar -->
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container">
<a class="navbar-brand" href="#">Brand</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav ms-auto">
<li class="nav-item">
<a class="nav-link active" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">About</a>
</li>
</ul>
</div>
</div>
</nav>Utilities
Utility classes for common patterns
Display & Position
Display and position utilities
<!-- Display -->
<div class="d-none">Hidden</div>
<div class="d-block">Block</div>
<div class="d-inline">Inline</div>
<div class="d-inline-block">Inline block</div>
<div class="d-flex">Flex</div>
<div class="d-grid">Grid</div>
<!-- Position -->
<div class="position-static">Static</div>
<div class="position-relative">Relative</div>
<div class="position-absolute">Absolute</div>
<div class="position-fixed">Fixed</div>
<div class="position-sticky">Sticky</div>Borders & Shadows
Border and shadow utilities
<!-- Borders -->
<div class="border">All borders</div>
<div class="border-top">Top border</div>
<div class="border-end">End border</div>
<div class="border-bottom">Bottom border</div>
<div class="border-start">Start border</div>
<!-- Border Colors -->
<div class="border border-primary">Primary</div>
<div class="border border-danger">Danger</div>
<!-- Border Width -->
<div class="border border-1">1px</div>
<div class="border border-2">2px</div>
<div class="border border-3">3px</div>
<!-- Rounded Corners -->
<div class="rounded">Rounded</div>
<div class="rounded-circle">Circle</div>
<div class="rounded-pill">Pill</div>
<div class="rounded-0">No rounding</div>JavaScript Components
Interactive Bootstrap components
Modal
Modal dialogs
<!-- Modal Trigger Button -->
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#exampleModal">
Launch modal
</button>
<!-- Modal Structure -->
<div class="modal fade" id="exampleModal" tabindex="-1">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Modal title</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal"></button>
</div>
<div class="modal-body">
Modal body text
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save</button>
</div>
</div>
</div>
</div>Tooltips & Popovers
Tooltips and popover components
<!-- Tooltip -->
<button type="button" class="btn btn-secondary"
data-bs-toggle="tooltip"
data-bs-placement="top"
title="Tooltip text">
Hover for tooltip
</button>
<!-- Popover -->
<button type="button" class="btn btn-danger"
data-bs-toggle="popover"
title="Popover title"
data-bs-content="Popover content">
Click for popover
</button>
<!-- Initialize in JavaScript -->
<script>
// Enable all tooltips
const tooltips = document.querySelectorAll('[data-bs-toggle="tooltip"]')
tooltips.forEach(el => new bootstrap.Tooltip(el))
// Enable all popovers
const popovers = document.querySelectorAll('[data-bs-toggle="popover"]')
popovers.forEach(el => new bootstrap.Popover(el))
</script>Alerts & Toasts
Alert messages and toast notifications
<!-- Basic Alert -->
<div class="alert alert-primary" role="alert">
A simple primary alert
</div>
<!-- Dismissible Alert -->
<div class="alert alert-warning alert-dismissible fade show" role="alert">
<strong>Warning!</strong> This alert is dismissible.
<button type="button" class="btn-close" data-bs-dismiss="alert"></button>
</div>
<!-- Toast -->
<div class="toast" role="alert">
<div class="toast-header">
<strong class="me-auto">Bootstrap</strong>
<button type="button" class="btn-close" data-bs-dismiss="toast"></button>
</div>
<div class="toast-body">
Toast message content
</div>
</div>Responsive Utilities
Responsive design utilities
Breakpoints
Responsive breakpoint system
<!-- Breakpoint Classes -->
<!--
xs: <576px (default, no suffix)
sm: ≥576px
md: ≥768px
lg: ≥992px
xl: ≥1200px
xxl: ≥1400px
-->
<!-- Responsive Columns -->
<div class="col-12 col-sm-6 col-md-4 col-lg-3">
Responsive column
</div>
<!-- Responsive Display -->
<div class="d-none d-md-block">
Hidden on mobile, visible on desktop
</div>Helpers & Misc
Helper classes and miscellaneous utilities
Helper Classes
Utility helper classes
<!-- Ratios -->
<div class="ratio ratio-1x1">1:1</div>
<div class="ratio ratio-4x3">4:3</div>
<div class="ratio ratio-16x9">16:9</div>
<div class="ratio ratio-21x9">21:9</div>
<!-- Stretched Link -->
<div class="card">
<div class="card-body">
<h5 class="card-title">
<a href="#" class="stretched-link">Card link</a>
</h5>
<p class="card-text">Entire card is clickable</p>
</div>
</div>
<!-- Text Truncation -->
<div class="text-truncate" style="width: 150px;">
This text will truncate with ellipsis
</div>