Bootstrap 5 Grid System Overview – Create Responsive Layouts with Rows & Columns
Introduction – What Is the Grid System in Bootstrap 5?
The Bootstrap 5 grid system is a flexible, mobile-first layout structure that uses a 12-column responsive grid to build web layouts. Whether you’re creating simple page sections or complex multi-device designs, the grid system adapts content across different screen sizes seamlessly.
In this guide, you’ll learn:
- The structure of Bootstrap’s 12-column grid system
- How to use
.row,.col, and responsive breakpoints - Practical layout examples with code and explanations
- Best practices for building adaptive, maintainable UIs
Grid System Structure
Bootstrap’s grid is composed of three primary building blocks:
.container– Wraps the entire grid.row– Creates a horizontal group of columns.col– Defines a column inside the row (auto or specified)
<div class="container">
<div class="row">
<div class="col">Column 1</div>
<div class="col">Column 2</div>
</div>
</div>
Code Explanation:
container: Provides padding and centers contentrow: Adds negative margins to align columns correctlycol: Auto-sizes to share width equally
12-Column System – Manual Column Sizing
You can divide the 12-column space using col-{number} classes:
Example – Manual Column Sizes:
<div class="row">
<div class="col-4 bg-light">Width: 4</div>
<div class="col-8 bg-secondary text-white">Width: 8</div>
</div>
Code Explanation:
col-4takes up 4/12 (33.33%) of the rowcol-8takes up 8/12 (66.67%)- Must total ≤12 columns per
.row
Responsive Column Classes
Bootstrap supports responsive column widths with breakpoint-specific classes like col-sm-6, col-md-4, etc.
Example – Responsive Columns:
<div class="row">
<div class="col-12 col-md-6 col-lg-4 bg-info text-white p-2">Column A</div>
<div class="col-12 col-md-6 col-lg-4 bg-success text-white p-2">Column B</div>
<div class="col-12 col-md-12 col-lg-4 bg-danger text-white p-2">Column C</div>
</div>
Code Explanation:
col-12: Full width on mobilecol-md-6: Half width on tabletscol-lg-4: One-third width on desktops
Auto Layout Columns
Let Bootstrap automatically size columns based on content or equal share.
<div class="row">
<div class="col bg-light">Auto Column 1</div>
<div class="col bg-dark text-white">Auto Column 2</div>
</div>
✔️ Each .col takes equal width by default inside the .row.
Mix Auto and Fixed Width Columns
<div class="row">
<div class="col-4 bg-warning">Fixed 4</div>
<div class="col bg-light">Auto-fill remaining</div>
</div>
Code Explanation:
- The first column takes 4/12 width
- The second column fills the remaining 8/12 automatically
Nesting Grid Rows
You can nest .row and .col structures inside another column to create complex layouts.
<div class="row">
<div class="col-6">
<div class="row">
<div class="col-6 bg-info">Nested 1</div>
<div class="col-6 bg-success">Nested 2</div>
</div>
</div>
<div class="col-6 bg-warning">Main Column</div>
</div>
Nesting allows granular layout control in card bodies, forms, or sidebars.
Grid Gutter Spacing
Control spacing between columns using gutter utilities:
.g-0to.g-5(from 0px to 3rem).gx-*for horizontal,.gy-*for vertical spacing
<div class="row gx-3 gy-2">
<div class="col bg-light">Gutter 1</div>
<div class="col bg-dark text-white">Gutter 2</div>
</div>
Best Practices for Bootstrap Grid
| Practice | Benefit |
|---|---|
Use .container for layout wrapping | Aligns grid with Bootstrap’s spacing system |
Keep columns inside .row only | Maintains proper spacing and layout flow |
| Combine fixed + auto columns wisely | Allows better adaptability and layout control |
| Use responsive classes consistently | Ensures layout adapts across devices |
| Avoid exceeding 12 total columns | Prevents layout breaking or wrapping |
Summary – Recap & Layout Tips
The Bootstrap 5 Grid System gives developers a powerful and responsive layout engine using a simple row/column model. It helps create flexible and adaptive interfaces that work across all screen sizes.
Key Takeaways:
- Bootstrap uses a 12-column, mobile-first grid layout
- Use
.rowand.colto build layouts easily - Responsive breakpoints adapt content across devices
- Combine manual sizing (
col-6) with auto-layout (col) for flexibility
Ideal for landing pages, dashboards, forms, content sections, and app interfaces.
FAQs – Bootstrap 5 Grid System
How many columns are in the Bootstrap grid?
The grid system uses 12 columns per row.
Can columns wrap automatically if they overflow?
Yes. Bootstrap rows wrap excess columns to a new line by default.
What happens if I don’t define column sizes?
Columns with class col will divide the row evenly.
Can I use multiple breakpoints in one row?
Yes. You can mix col-md-6 with col-lg-4 in the same layout.
Do I always need a .container with rows?
Recommended. .container ensures correct spacing and layout boundaries.
Share Now :
