Reputation: 41
I am making an angular app (angular 11.2.4 with bootstrap 4.5.3) and the navbar
is not rendering properly on screen sizes less than ~580 pixels wide.
along the bar I can click the toggler and 'expand' the collapse region, but still nothing is rendered. This is also what is rendered when the bar is a fixed regular navbar
html:
<nav class="navbar navbar-expand-sm bg-dark fixed-top hidden-sm hidden-xs">
<div class="navbar-collapse collapse" id="navbarSupportedContent">
<ul class="navbar-nav mr-auto">
<li class="nav-item active">
<a class="nav-link text-white" href="#" routerLink="/home">Home</a>
</li>
<li class="nav-item">
<a class="nav-link text-white" href="#" routerLink="/resume">Resume</a>
</li>
<li class="nav-item">
<a class="nav-link text-white" href="#" routerLink="/projects">Projects</a>
</li>
</ul>
<ul class="navbar-nav">
<li class="nav-item active">
<a class="nav-link" href="https://github.com/">
<img src="../../assets/github_icon.png" width="30" height="30" class="d-inline-block align-top" alt="">
</a>
</li>
</ul>
</div>
</nav>
<nav class = "navbar visible-xs visible-sm">
<button class="navbar-toggler navbar-toggler-left"
type="button"
aria-controls="mobileNavbar"
aria-expanded="false"
[attr.aria-expanded]="!isCollapsed"
aria-label="Toggle mobile navigation"
(click)="toggleMenu()"
>
<span class="dark-blue-text"><i class="fas fa-bars fa-1x">
</i></span>
</button>
<div class="collapse navbar-collapse" id="mobileNavbar" [ngbCollapse]="isCollapsed">
<ul class="navbar-nav mr-auto">
<li class="nav-item active">
<a class="nav-link text-white" href="#" routerLink="/home">Home</a>
</li>
<li class="nav-item">
<a class="nav-link text-white" href="#" routerLink="/resume">Resume</a>
</li>
<li class="nav-item">
<a class="nav-link text-white" href="#" routerLink="/projects">Projects</a>
</li>
</ul>
</div>
</nav>
typescript:
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-main-navbar',
templateUrl: './main-navbar.component.html',
styleUrls: ['./main-navbar.component.css']
})
export class MainNavbarComponent implements OnInit {
isCollapsed = true;
constructor() { }
ngOnInit(): void {
}
toggleMenu()
{
this.isCollapsed = !this.isCollapsed;
}
}
Upvotes: 0
Views: 667
Reputation: 2723
Remove hidden-sm hidden-xs
from your nav
tag's class.
Edit:
Ignore the previous answer. Add bg-dark
to your second nav class.
<nav class="navbar bg-dark visible-xs visible-sm">
Working demo at Stackblitz.
Upvotes: 1