Build a responsive Bootstrap page by starting with a version-matched document, adding the viewport meta tag, and arranging content in a container, rows, and breakpoint-aware columns. Bootstrap 5 uses a mobile-first grid: a column rule such as .col-md-6 applies from the 768px medium breakpoint upward, while narrower screens can stack the content. This guide uses Bootstrap 5.0 for its layout and navbar examples; its image guidance links to the Bootstrap 5.3 figures documentation.
1. Start with a version-matched Bootstrap document
Bootstrap’s official Bootstrap 5.0 introduction provides starter setup guidance, including CDN assets. Keep the CSS, JavaScript, and component markup on the same major version: a snippet copied from another Bootstrap major version may use different markup or behavior.
The viewport meta tag is essential for mobile rendering and touch zooming. Put it in the document head along with the character encoding and the Bootstrap stylesheet. The sample below is a complete, single-file starting point; substitute the exact version-matched CDN stylesheet and bundle script shown in the official Bootstrap getting-started page for the Bootstrap 5.0 release you choose.
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Responsive Bootstrap page</title>
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
</head>
<body>
<main class="container py-4">
<h1>Responsive page</h1>
<p>Replace this content with your page.</p>
</main>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
</body>
</html>
The sample pins Bootstrap 5.0.2 so its markup and behavior stay version-aligned. If you use a different release, copy that release’s asset URLs and integrity values from its official setup instructions rather than mixing versions. The JavaScript bundle is included here for the navbar shown below; a page without interactive Bootstrap components does not need the plugin script.
#1 Best Overall
- CRISP CLARITY: This 23.8″ Philips V line monitor delivers crisp Full HD 1920x1080 visuals. Enjoy movies, shows and videos with remarkable detail
- INCREDIBLE CONTRAST: The VA panel produces brighter whites and deeper blacks. You get true-to-life images and more gradients with 16.7 million colors
- THE PERFECT VIEW: The 178/178 degree extra wide viewing angle prevents the shifting of colors when viewed from an offset angle, so you always get consistent colors
- WORK SEAMLESSLY: This sleek monitor is virtually bezel-free on three sides, so the screen looks even bigger for the viewer. This minimalistic design also allows for seamless multi-monitor setups that enhance your workflow and boost productivity
- A BETTER READING EXPERIENCE: For busy office workers, EasyRead mode provides a more paper-like experience for when viewing lengthy documents
2. Choose a content wrapper: .container or .container-fluid
Wrap Bootstrap’s default grid in a container. The Bootstrap 5.0 containers guide describes containers as the basic content wrapper and documents the responsive maximum widths.
.containeruses responsive maximum widths at Bootstrap’s breakpoint tiers. Use it when text and other content should remain within a readable, centered measure on wide screens..container-fluidremains 100% wide. Use it when the design needs to span the viewport, such as a full-width dashboard area or edge-to-edge background.
These choices affect the content wrapper, not whether the columns themselves can respond. Either wrapper can contain a responsive grid.
3. Build the layout with rows and responsive columns
Bootstrap’s grid is a 12-column system. A row groups columns, and the column classes determine how much grid space each section occupies at different viewport widths. In this example, each area is full-width by default and becomes half-width at the medium breakpoint:
<main class="container py-4">
<div class="row g-3">
<section class="col-12 col-md-6">
<h2>Main content</h2>
<p>This section spans the row on narrow screens and half of it at md and above.</p>
</section>
<section class="col-12 col-md-6">
<h2>Related content</h2>
<p>This section follows the same responsive transition.</p>
</section>
</div>
</main>
.col-12 establishes a full-row column at the base size; .col-md-6 changes its width to six of twelve grid columns from md upward. Bootstrap is mobile first, so a breakpoint-specific rule layers onto the base behavior at that width and above. You can use multiple breakpoint classes on one element when the content needs additional changes at larger widths.
Rank #2
- CRISP CLARITY: This 22 inch class (21.5″ viewable) Philips V line monitor delivers crisp Full HD 1920x1080 visuals. Enjoy movies, shows and videos with remarkable detail
- 100HZ FAST REFRESH RATE: 100Hz brings your favorite movies and video games to life. Stream, binge, and play effortlessly
- SMOOTH ACTION WITH ADAPTIVE-SYNC: Adaptive-Sync technology ensures fluid action sequences and rapid response time. Every frame will be rendered smoothly with crystal clarity and without stutter
- INCREDIBLE CONTRAST: The VA panel produces brighter whites and deeper blacks. You get true-to-life images and more gradients with 16.7 million colors
- THE PERFECT VIEW: The 178/178 degree extra wide viewing angle prevents the shifting of colors when viewed from an offset angle, so you always get consistent colors
Bootstrap 5.0 default breakpoints
Breakpoints refer to viewport widths, not particular phones, tablets, or computers. Bootstrap documents them as a foundation for common viewport sizes, not as exact device targets. Its Sass breakpoint values can be customized.
| Tier | Viewport width | Example class |
|---|---|---|
| xs | Below 576px; base styles | .col-12 |
| sm | 576px and up | .col-sm-6 |
| md | 768px and up | .col-md-6 |
| lg | 992px and up | .col-lg-4 |
| xl | 1200px and up | .col-xl-3 |
| xxl | 1400px and up | .col-xxl-3 |
Choose a transition based on the content: make the browser window narrower until text, controls, or columns feel cramped, then decide where a different arrangement improves the reading or interaction experience. Do not choose a breakpoint only because a device is commonly called a phone or tablet.
4. Make navigation collapse at the right width
Bootstrap’s .navbar-expand-* class sets the width at which navigation links switch from collapsed to expanded. In this example, .navbar-expand-lg keeps the compact toggle below the large breakpoint and displays the links at 992px and above. Change lg to another documented tier if the content needs a different transition.
<nav class="navbar navbar-expand-lg navbar-light bg-light" aria-label="Main navigation">
<div class="container">
<a class="navbar-brand" href="#home">Example site</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse"
data-bs-target="#mainNav" aria-controls="mainNav" aria-expanded="false"
aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="mainNav">
<ul class="navbar-nav ms-auto">
<li class="nav-item"><a class="nav-link" href="#features">Features</a></li>
<li class="nav-item"><a class="nav-link" href="#contact">Contact</a></li>
</ul>
</div>
</div>
</nav>
The button’s data-bs-target value must match the collapse element’s id. The Bootstrap 5.0 navbar documentation explains the responsive collapse classes and JavaScript behavior. A <nav> element provides a navigation landmark; the aria-label identifies this one for assistive technology, particularly if a page has multiple navigation landmarks.
Rank #3
- Clear visuals. Fluid motion: A 144Hz refresh rate and 1ms MPRT deliver smooth, tear‑free motion across work, gaming, and streaming for clearer, more fluid viewing.
- Eye comfort: TÜV Rheinland 3‑star* certification reduces harmful blue light while preserving stunning color quality without compromise. *TÜV Rheinland 3-star eye comfort certification.
- Wide viewing angle: Get consistent views across a wide 178° /178° viewing angle.
- In-Plane Switching (IPS): See excellent color accuracy and consistency across wide viewing angles with In-plane Switching (IPS) technology.
- Ultra-thin bezels: Maximize your viewing experience with thin bezels.
For this interactive collapse, load Bootstrap’s JavaScript bundle as shown in the starter document. If you instead load individual scripts for Bootstrap components such as tooltips or popovers, the Bootstrap 5.0 introduction says Popper must be loaded first.
5. Keep content images within their columns
Use .img-fluid on content images to make them responsive within their containing element. The class is documented in the Bootstrap 5.3 figures guide.
<img src="feature.jpg" class="img-fluid" alt="A descriptive account of the image">
Write useful alternative text for meaningful images; use an empty alt="" when an image is decorative and should be skipped by assistive technology. Bootstrap’s responsive image class controls how the image fits; it does not replace appropriate image content or accessibility text.
6. Test the layout at real viewport widths
After building the page, check how it behaves across narrow and wide viewports. These are practical author checks rather than a Bootstrap-prescribed testing sequence:
Free tools Windows power users keep installed
One-click scans. No signup required.
Rank #4
- CURVED FOR ENHANCED ENGAGEMENT: An immersive viewing experience with a curved monitor that wraps more closely around your field of vision; It creates a wider view, enhancing depth perception and minimizing peripheral distraction
- SMOOTH PERFORMANCE FOR SEAMLESS CONTENT: Stay in the action when playing games, watching videos, or working on creative projects; The 100Hz refresh rate reduces lag and motion blur so you don't miss a thing in fast-paced moments¹
- MORE GAMING POWER: Gain the edge with optimizable game settings; Color and image contrast can be adjusted to see scenes more vividly and spot enemies hiding in the dark; Game Mode adjusts any game to fill the screen so you can view every detail²
- KEEP IT EASY ON THE EYES: Care for your eyes and stay comfortable, even during long sessions; Advanced eye comfort technology certified by TÜV reduces eye strain by minimizing blue light and reducing irritating screen flicker²
- INCREASED VERSATILITY: Connect to more; Plug devices straight into your monitor for increased flexibility, making your computing environment even more convenient
- Start at a narrow viewport and confirm that content is readable, columns stack as intended, and navigation can be opened.
- Resize across each breakpoint used in your classes. Confirm that a layout changes at the expected width and that the transition does not leave awkward gaps or cramped content.
- Check a wide viewport for overly stretched text or content. If necessary, use a responsive
.containerrather than a full-width wrapper. - Look for horizontal scrolling, clipped controls, and images wider than their columns. Confirm the navbar remains usable both before and after it expands.
- Test with actual page content, including long headings, links, and labels; placeholder text may not reveal wrapping or overflow problems.
7. Troubleshoot common responsive Bootstrap problems
The page looks like a desktop page on a phone
Check that the document head contains <meta name="viewport" content="width=device-width, initial-scale=1">. Without the viewport setting, the browser may not render the page at the expected device width.
The navbar toggle appears but does nothing
Confirm that the Bootstrap JavaScript bundle is loaded, that it matches the CSS major version, and that the button’s data-bs-target matches the collapse element’s id. Also check the browser console and network panel for a script load error.
The navbar expands or collapses at an unexpected width
Read the suffix of .navbar-expand-* as the expansion threshold. For example, .navbar-expand-lg expands at the large tier and above; it is not a command to target a specific device.
Columns do not align or wrap as intended
Check the structure: place columns inside a .row, and place the row inside a .container or .container-fluid. Verify that the column widths you assign at a given tier fit the 12-column grid and that you have not omitted the base behavior needed on narrow screens.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Best Value
- 【INTEGRATED SPEAKERS】Whether you're at work or in the midst of an intense gaming session, our built-in speakers provide rich and seamless audio, all while keeping your desk clutter-free.
- 【EASY ON THE EYES】 Protect your eyes and enhance your comfort with Blue-Light Shift technology. This feature reduces harmful blue light emissions from your screen, helping to alleviate eye strain during long hours of use and promoting healthier viewing habits.
- 【WIDEN YOUR PERSPECTIVE】Our sleek minimal bezel design ensures undivided attention. The nearly bezel-free display seamlessly connects in a dual monitor arrangement, delivering an unobstructed view that lets you focus on more at once, completely distraction-free.
Styles or component behavior look inconsistent
Make sure the stylesheet, JavaScript, and copied component markup belong to the same Bootstrap major version. Version-mismatched snippets are a common reason for unexpected behavior; use the versioned documentation alongside the assets used by your project.
Or skip the browser setup
If your next step is capturing a finished page for review or documentation, ScreenshotNeo can return a screenshot from one GET request instead of requiring you to set up browser capture. Its cookie and consent handling accepts banners like a visitor and removes 60+ known consent platforms, newsletter popups, and chat widgets before capture; each step can be turned off. Bot checks/CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and response headers say which page verdict and billing status applied. It also provides an MCP server for AI agents, with take_screenshot, get_page_info, and capture_pdf tools.
For example, save a PNG screenshot of the page at https://example.com with cURL:
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://example.com -o shot.webp
See the ScreenshotNeo API documentation for setup and request options. It supports PNG, JPEG, WebP, and PDF output, plus controls such as full-page capture, CSS selectors, device presets and viewport sizes, custom waits, headers and cookies, and caching with a chosen TTL. One-call capture is useful for repeatable screenshots, but it does not replace checking your page interactively at the breakpoints where the design changes.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Scan for outdated or missing drivers - takes under a minute3Clear out junk files and repair common Windows errorsThe Free plan includes 1,000 shots per month with no card; paid plans start at $5 for 3,000 shots. Every feature is on every plan. Sign up for ScreenshotNeo free to get 1,000 screenshots a month with no card.
Frequently Asked Questions
Can I use Bootstrap’s grid without writing custom media queries?
Yes. The responsive grid classes supply breakpoint-based layout rules for common arrangements; write custom CSS media queries only if your design needs rules Bootstrap’s utilities and grid do not provide.
Can I change Bootstrap’s default breakpoint widths?
Yes. The Bootstrap 5.0 breakpoints documentation describes Sass breakpoint customization; changing framework variables generally means compiling a customized Bootstrap build.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
Recommended Free Tools

