How can I build a mega-menu style navbar in Bootstrap 5 without third-party plugins?
Asked on Jun 02, 2025
1 Answer
To create a mega-menu style navbar in Bootstrap 5, you can utilize Bootstrap's grid system and dropdown components. Here's a basic example of how to structure it:
<!-- BEGIN COPY / PASTE -->
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">Brand</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNavDropdown">
<ul class="navbar-nav">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" role="button" data-bs-toggle="dropdown" aria-expanded="false">
Mega Menu
</a>
<ul class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
<div class="container">
<div class="row">
<div class="col-md-4">
<h6>Category 1</h6>
<a class="dropdown-item" href="#">Item 1</a>
<a class="dropdown-item" href="#">Item 2</a>
</div>
<div class="col-md-4">
<h6>Category 2</h6>
<a class="dropdown-item" href="#">Item 3</a>
<a class="dropdown-item" href="#">Item 4</a>
</div>
<div class="col-md-4">
<h6>Category 3</h6>
<a class="dropdown-item" href="#">Item 5</a>
<a class="dropdown-item" href="#">Item 6</a>
</div>
</div>
</div>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<!-- END COPY / PASTE -->
Additional Comment:
✅ Answered with Bootstrap 5 best practices.- This example uses Bootstrap's grid system to organize the mega-menu into columns.
- The `navbar-expand-lg` class makes the navbar responsive, expanding on larger screens.
- The `dropdown-menu` is wrapped in a `container` and `row` to utilize the grid system for layout.
- Ensure you include Bootstrap's CSS and JS in your project for this to work correctly.