【问题标题】:Twitter-bootstrap: navbar not showing up on small screensTwitter-bootstrap:导航栏未显示在小屏幕上
【发布时间】:2017-01-19 16:14:10
【问题描述】:

我正忙于使用 angular-cli 的 angular2 项目...我正在尝试使用 bootstrap 3 创建一个响应式导航栏并遇到一些问题...导航栏显示在我笔记本电脑的屏幕上,但是当我在 chrome dev 中对其进行测试时iPhone 5 屏幕尺寸的工具我只能看到折叠按钮和品牌文字...知道我做错了什么吗?难道是jQuery没有加载?如果是这样,我如何测试它是否已加载(使用 ng-cli)?

我的导航栏代码:

<nav class="navbar navbar-toggleable-md navbar-light">


        <div class="navbar-header">
            <button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria="navbarSupportedContent" aria-expanded="false" aria-label="toggle navigation"><span class="icon-bar"></span></button>                       
        </div>
        <a class="navbar-brand" href="#">Retail Mobile</a>

        <div class="collapse navbar-collapse" id="navbarSupportedContent">
            <ul class="nav navbar-nav">
                <li [routerLinkActive]="['active']" [routerLinkActiveOptions]="{exact:true}" class="nav-item"><a [routerLink]="['/home']"><span class="glyphicon glyphicon-home"></span> Home</a></li>
                <li [routerLinkActive]="['active']" [routerLinkActiveOptions]="{exact:true}" class="nav-item"><a [routerLink]="['/checkBarcodes']"><span class="glyphicon glyphicon-barcode"></span> Check Barcodes</a></li>
                <li [routerLinkActive]="['active']" [routerLinkActiveOptions]="{exact:true}" class="nav-item"><a [routerLink]="['/stockTake']"><span class="glyphicon glyphicon-folder-open"></span> Stock Take</a></li>
                <li [routerLinkActive]="['active']" [routerLinkActiveOptions]="{exact:true}" class="nav-item"><a [routerLink]="['/settings']"><span class="glyphicon glyphicon-wrench"></span> Settings</a></li>                
            </ul>
    </div>

</nav>


my jQuery import in angular-cli.json:

"scripts": [
        "./../node_modules/jquery/dist/jquery.min.js"
      ],

【问题讨论】:

  • 请为您的问题制作一个 jsfiddle
  • 能否提供您正在使用的引导版本
  • @haxxxton 我正在使用引导程序 3

标签: css html twitter-bootstrap


【解决方案1】:

目前 bootstrap 3 不支持菜单项的非“sm”断点“折叠”。 (您似乎在 ie.navbar-toggleable-md 中混入了一些 Bootstrap v4 类)。

同样,当v3 uses navbar-togglenavbar-toggle-right 时,您尝试使用navbar-togglernavbar-toggler-right 来引用v4 toggler

最后一个问题是 navbar-light 颜色也是 v4,因此 navbar-toggleicon-bar 在没有额外 css 的情况下显示为白底白字。

其他 CSS

.navbar-light .navbar-toggle .icon-bar {
    background: black;
}

更新的 HTML

<nav class="navbar navbar-light">
    <div class="navbar-header">
        <button class="navbar-toggle navbar-toggle-right" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria="navbarSupportedContent" aria-expanded="false" aria-label="toggle navigation"><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span></button>
    </div>
    <a class="navbar-brand" href="#">Retail Mobile</a>

    <div class="collapse navbar-collapse" id="navbarSupportedContent">
        <ul class="nav navbar-nav">
            <li [routerLinkActive]="['active']" [routerLinkActiveOptions]="{exact:true}" class="nav-item"><a [routerLink]="['/home']"><span class="glyphicon glyphicon-home"></span> Home</a></li>
            <li [routerLinkActive]="['active']" [routerLinkActiveOptions]="{exact:true}" class="nav-item"><a [routerLink]="['/checkBarcodes']"><span class="glyphicon glyphicon-barcode"></span> Check Barcodes</a></li>
            <li [routerLinkActive]="['active']" [routerLinkActiveOptions]="{exact:true}" class="nav-item"><a [routerLink]="['/stockTake']"><span class="glyphicon glyphicon-folder-open"></span> Stock Take</a></li>
            <li [routerLinkActive]="['active']" [routerLinkActiveOptions]="{exact:true}" class="nav-item"><a [routerLink]="['/settings']"><span class="glyphicon glyphicon-wrench"></span> Settings</a></li>
        </ul>
    </div>

</nav>

JSFIDDLE

【讨论】:

  • 谢谢,但它仍然没有显示在较小的显示器上......“当前引导程序 3 不支持菜单项的非“sm”断点“折叠”是什么意思。”这是否意味着bootstrap 3 不可能吗?
  • 当您说“不显示”时,您的意思是您不想使用“切换”功能在小屏幕上展开和折叠导航? (您可以单击右侧的“汉堡包”以“显示”小提琴中的链接)。我的意思是,bootstrap 4 允许您选择它开始折叠链接的屏幕尺寸,其中 bootstrap 3 只能在“sm”断点处开箱即用。
  • 切换导航按钮根本不起作用...会不会是 jQuery?
  • 你用的是什么浏览器?它似乎在 OSX Chrome V 55.0.2883.95(64 位)上的 jsfiddle in my answer 中运行良好
  • 我正在使用 chrome v55.0.2883.87 Windows 10 x64 ... 我的意思是当我在响应式设计 (iPhone 5) 设备屏幕尺寸中查看它时,它什么也没做点击...可能是 jQuery 吗?我也从顶部导航容器中删除了 navbar-light 类...我只看到零售移动标题文本。
猜你喜欢
  • 2012-04-28
  • 1970-01-01
  • 1970-01-01
  • 2020-12-01
  • 2013-03-28
  • 1970-01-01
  • 1970-01-01
  • 2020-05-18
  • 2021-06-15
相关资源
最近更新 更多