使用Bootstrap和Angular实现固定顶部导航栏

5

我无法在Angular中实现固定顶部的navbar。我的主app.component模板如下:

<page-header></page-header> <router-outlet></router-outlet>

而Bootstrap的导航栏包含在我的page-header中:

<nav class="navbar navbar-default navbar-fixed-top">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
          <a class="navbar-brand" href="#">Project name</a>
        </div>
        <div id="navbar" class="navbar-collapse collapse">
          <ul class="nav navbar-nav">
            <li class="active"><a href="#">Home</a></li>
            <li><a href="#about">About</a></li>
            <li><a href="#contact">Contact</a></li>
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a>
              <ul class="dropdown-menu">
                <li><a href="#">Action</a></li>
                <li><a href="#">Another action</a></li>
                <li><a href="#">Something else here</a></li>
                <li role="separator" class="divider"></li>
                <li class="dropdown-header">Nav header</li>
                <li><a href="#">Separated link</a></li>
                <li><a href="#">One more separated link</a></li>
              </ul>
            </li>
          </ul>
          <ul class="nav navbar-nav navbar-right">
            <li><a href="../navbar/">Default</a></li>
            <li><a href="../navbar-static-top/">Static top</a></li>
            <li class="active"><a href="./">Fixed top <span class="sr-only">(current)</span></a></li>
          </ul>
        </div><!--/.nav-collapse -->
      </div>
    </nav>

我的路由出口高度是300%。我现在想实现的是页面标题在顶部保持固定。使用Angular和Bootstrap 4可以实现吗?


根据您的代码,它似乎应该这样,但如果不是,请在页眉样式表中设置.navbar{position:fixed}。 - Vega
3
如果你使用的是Bootstrap 4.0.0版本,那么它不再使用"navbar-fixed-top",而是改为"fixed-top"。具体可以参考官方文档:https://getbootstrap.com/docs/4.0/components/navbar/。 - Eliseo
1
尝试像这样使用:https://getbootstrap.com/docs/4.0/examples/navbar-top-fixed/ - core114
1个回答

14

通过将 navbar-fixed-top 更改为只有 fixed-top,解决了问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接