Performance: Navbar basics
Navbar basics affect the initial page load speed and interaction responsiveness by how the navigation bar is structured and styled.
<nav class="navbar navbar-light bg-light"> <div class="container-fluid"> <a class="navbar-brand" href="#">Brand</a> <ul class="navbar-nav d-flex flex-row"> <li class="nav-item"><a class="nav-link active" href="#">Home</a></li> <li class="nav-item"><a class="nav-link" href="#">Features</a></li> <li class="nav-item"><a class="nav-link" href="#">Pricing</a></li> </ul> </div> </nav>
<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="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarNav"> <ul class="navbar-nav"> <li class="nav-item"><a class="nav-link active" href="#">Home</a></li> <li class="nav-item"><a class="nav-link" href="#">Features</a></li> <li class="nav-item"><a class="nav-link" href="#">Pricing</a></li> <li class="nav-item"><a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a></li> </ul> </div> </div> </nav>
| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Full Bootstrap Navbar with collapse | High (many nested elements) | Multiple reflows on toggle | High paint cost due to animations | [X] Bad |
| Simplified Navbar without collapse | Low (flat structure) | Single reflow on load | Low paint cost | [OK] Good |
navbar in a website?navbar and navbar-expand-lg classes on a <nav> element for responsive navbars.<nav class='navbar navbar-expand-lg'> uses correct element and classes as per Bootstrap standards.navbar navbar-expand-lg [OK]<nav class='navbar navbar-expand-md navbar-light bg-light'>
<a class='navbar-brand' href='#'>MySite</a>
<button class='navbar-toggler' type='button' data-bs-toggle='collapse' data-bs-target='#navMenu'>
<span class='navbar-toggler-icon'></span>
</button>
<div class='collapse navbar-collapse' id='navMenu'>
<ul class='navbar-nav'>
<li class='nav-item'><a class='nav-link' href='#'>Home</a></li>
<li class='nav-item'><a class='nav-link' href='#'>About</a></li>
</ul>
</div>
</nav>navbar-light bg-light for a light style and navbar-expand-md to collapse below medium screen size.<nav class='navbar navbar-expand-lg navbar-dark bg-dark'>
<a class='navbar-brand' href='#'>Site</a>
<button class='navbar-toggler' type='button' data-toggle='collapse' data-target='#menu'>
<span class='navbar-toggler-icon'></span>
</button>
<div class='collapse navbar-collapse' id='menu'>
<ul class='navbar-nav'>
<li class='nav-item'><a class='nav-link' href='#'>Home</a></li>
</ul>
</div>
</nav>data-bs-toggle and data-bs-target instead of data-toggle and data-target.bg-dark is present.fixed-top fixes navbar always at top, sticky-top sticks it after scrolling. Both keep navbar visible, but sticky-top is preferred for smooth behavior.navbar-expand-lg collapses below large screens, navbar-dark bg-dark gives dark style with good contrast.navbar sticky-top navbar-expand-lg navbar-dark bg-dark uses sticky-top, navbar-expand-lg, navbar-dark, and bg-dark, matching requirements best.Pass the test and this pattern moves unknown