Navbar

Documentation and examples for Bootstrap’s powerful, responsive navigation header, the navbar.

Basic example

Navbars require a wrapping .navbar with .navbar-expand{-sm|-md|-lg|-xl|-xxl} for responsive collapsing and color scheme classes.

														
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
	<a class="navbar-brand" href="#">Navbar</a>
	<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
		<span class="navbar-toggler-icon"></span>
	</button>
	<div class="collapse navbar-collapse" id="navbarSupportedContent">
		<ul class="navbar-nav me-auto mb-2 mb-lg-0">
		<li class="nav-item">
			<a class="nav-link active" aria-current="page" href="#">Home</a>
		</li>
		<li class="nav-item">
			<a class="nav-link" href="#">Link</a>
		</li>
		<li class="nav-item dropdown">
			<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
			Dropdown
			</a>
			<ul class="dropdown-menu" aria-labelledby="navbarDropdown">
			<li><a class="dropdown-item" href="#">Action</a></li>
			<li><a class="dropdown-item" href="#">Another action</a></li>
			<li><hr class="dropdown-divider"></li>
			<li><a class="dropdown-item" href="#">Something else here</a></li>
			</ul>
		</li>
		<li class="nav-item">
			<a class="nav-link disabled">Disabled</a>
		</li>
		</ul>
		<form class="d-flex">
		<input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
		<button class="btn btn-outline-success" type="submit">Search</button>
		</form>
	</div>
</div>
</nav>
													
Brand

The .navbar-brand can be applied to most elements, but an anchor works best, as some elements might require utility classes or custom styles.

														
<!-- As a link -->
<nav class="navbar navbar-light bg-light mb-3">
	<div class="container-fluid">
	<a class="navbar-brand" href="#">Navbar</a>
	</div>
</nav>

<!-- As a heading -->
<nav class="navbar navbar-light bg-light">
	<div class="container-fluid">
	<span class="navbar-brand mb-0 h1">Navbar</span>
	</div>
</nav>
													
Image

You can replace the text within the .navbar-brand with an <img>.

														
<nav class="navbar navbar-light bg-light">
	<div class="container">
		<a class="navbar-brand" href="#">
		<img src="dist/img/logo-light.svg" alt="logo">
		</a>
	</div>
</nav>
													
Forms

Immediate child elements of .navbar use flex layout and will default to justify-content: space-between. Use additional flex utilities as needed to adjust this behavior.

														
<nav class="navbar navbar-light bg-light">
	<div class="container-fluid">
		<a class="navbar-brand">Navbar</a>
		<form class="d-flex">
			<input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
			<button class="btn btn-outline-success" type="submit">Search</button>
		</form>
	</div>
</nav>
													
Text

Navbars may contain bits of text with the help of .navbar-text. This class adjusts vertical alignment and horizontal spacing for strings of text.

														
<nav class="navbar navbar-light bg-light">
	<div class="container-fluid">
		<span class="navbar-text">
		Navbar text with an inline element
		</span>
	</div>
</nav>
													
Navbar dark

Theming the navbar has never been easier thanks to the combination of theming classes and background-color utilities. Choose from .navbar-light for use with light background colors, or .navbar-dark for dark background colors. Then, customize with .bg-* utilities.

														
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<div class="container-fluid">
	<a class="navbar-brand" href="#">Navbar</a>
	<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent_1" aria-controls="navbarSupportedContent_1" aria-expanded="false" aria-label="Toggle navigation">
		<span class="navbar-toggler-icon"></span>
	</button>
	<div class="collapse navbar-collapse" id="navbarSupportedContent_1">
		<ul class="navbar-nav me-auto mb-2 mb-lg-0">
		<li class="nav-item">
			<a class="nav-link active" aria-current="page" href="#">Home</a>
		</li>
		<li class="nav-item">
			<a class="nav-link" href="#">Link</a>
		</li>
		<li class="nav-item dropdown">
			<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown_1" role="button" data-bs-toggle="dropdown" aria-expanded="false">
			Dropdown
			</a>
			<ul class="dropdown-menu" aria-labelledby="navbarDropdown_1">
			<li><a class="dropdown-item" href="#">Action</a></li>
			<li><a class="dropdown-item" href="#">Another action</a></li>
			<li><hr class="dropdown-divider"></li>
			<li><a class="dropdown-item" href="#">Something else here</a></li>
			</ul>
		</li>
		<li class="nav-item">
			<a class="nav-link disabled">Disabled</a>
		</li>
		</ul>
		<form class="d-flex">
		<input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
		<button class="btn btn-outline-success" type="submit">Search</button>
		</form>
	</div>
</div>
</nav>
													
External content

Sometimes you want to use the collapse plugin to trigger a container element for content that structurally sits outside of the .navbar . Because our plugin works on the id and data-bs-target matching, that’s easily done!

														
<div class="collapse" id="navbarToggleExternalContent">
	<div class="bg-dark p-4">
		<h5 class="text-white h4">Collapsed content</h5>
		<span class="text-muted">Toggleable via the navbar brand.</span>
	</div>
	</div>
<nav class="navbar navbar-dark bg-dark">
	<div class="container-fluid">
		<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarToggleExternalContent" aria-controls="navbarToggleExternalContent" aria-expanded="false" aria-label="Toggle navigation">
		<span class="navbar-toggler-icon"></span>
		</button>
	</div>
</nav>
													
Offcanvas

Transform your expanding and collapsing navbar into an offcanvas drawer with the offcanvas plugin. We extend both the offcanvas default styles and use our .navbar-expand-* classes to create a dynamic and flexible navigation sidebar.

														
<nav class="navbar navbar-light bg-light">
<div class="container-fluid">
	<a class="navbar-brand" href="#">Offcanvas navbar</a>
	<button class="navbar-toggler" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasNavbar" aria-controls="offcanvasNavbar">
		<span class="navbar-toggler-icon"></span>
	</button>
	<div class="offcanvas offcanvas-end" tabindex="-1" id="offcanvasNavbar" aria-labelledby="offcanvasNavbarLabel">
		<div class="offcanvas-header">
		<h5 class="offcanvas-title" id="offcanvasNavbarLabel">Offcanvas</h5>
		<button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
		</div>
		<div class="offcanvas-body">
		<ul class="navbar-nav justify-content-end flex-grow-1 pe-3">
			<li class="nav-item">
			<a class="nav-link active" aria-current="page" href="#">Home</a>
			</li>
			<li class="nav-item">
			<a class="nav-link" href="#">Link</a>
			</li>
			<li class="nav-item dropdown">
			<a class="nav-link dropdown-toggle" href="#" id="offcanvasNavbarDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
				Dropdown
			</a>
			<ul class="dropdown-menu" aria-labelledby="offcanvasNavbarDropdown">
				<li><a class="dropdown-item" href="#">Action</a></li>
				<li><a class="dropdown-item" href="#">Another action</a></li>
				<li>
				<hr class="dropdown-divider">
				</li>
				<li><a class="dropdown-item" href="#">Something else here</a></li>
			</ul>
			</li>
		</ul>
		<form class="d-flex">
			<input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
			<button class="btn btn-outline-success" type="submit">Search</button>
		</form>
		</div>
	</div>
</div>
</nav>