【问题标题】:Horizontal scrolling navbar bootstrap水平滚动导航栏引导程序
【发布时间】:2016-02-08 19:10:43
【问题描述】:

我的网站右侧有一个导航栏,但如果我像平板电脑屏幕一样调整屏幕大小,导航栏会显示 2 行。

我的导航栏 html 代码是基本的:

<div class="nav_div col-sm-offset-5 col-sm-7"> 
        <nav class="navbar navbar-default">
          <div class="container-fluid">
            <!-- Brand and toggle get grouped for better mobile display -->
            <div class="navbar-header">
              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-nav" aria-expanded="false">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
            </div>
            <!-- Collect the nav links, forms, and other content for toggling -->
            <div class="collapse navbar-collapse" id="bs-nav">
              <ul class="nav navbar-nav navbar-center">
                <li data-menuanchor="blablab" class="active"><a href="#blablab">blablab</a></li>
                <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
                <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
                <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
                <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
                <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
              </ul>
            </div><!-- /.navbar-collapse -->
          </div><!-- /.container-fluid -->
        </nav>    
    </div>

我搜索有一个自动水平滚动条,活动标签位于中间。

【问题讨论】:

    标签: twitter-bootstrap responsive-design navbar horizontal-scrolling


    【解决方案1】:

    问题是这样的:&lt;div class="nav_div col-sm-offset-5 col-sm-7"&gt;&lt;/div&gt; 当视口调整大小时,您的 col-sm-7 不足以容纳您的内容,因此它将内容推送到新行。

    您可以将其更改为类似 &lt;div class="nav_div col-sm-offset-3 col-sm-9"&gt; 的内容,作为一种易于清洁的解决方案。

    两个带有演示的解决方案:

    <div class="nav_div col-sm-offset-3 col-sm-9"> 
            <nav class="navbar navbar-default">
              <div class="container-fluid">
                <!-- Brand and toggle get grouped for better mobile display -->
                <div class="navbar-header">
                  <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-nav" aria-expanded="false">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                  </button>
                </div>
                <!-- Collect the nav links, forms, and other content for toggling -->
                <div class="collapse navbar-collapse" id="bs-nav">
                  <ul class="nav navbar-nav navbar-center">
                    <li data-menuanchor="blablab" class="active"><a href="#blablab">blablab</a></li>
                    <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
                    <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
                    <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
                    <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
                    <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
                  </ul>
                </div><!-- /.navbar-collapse -->
              </div><!-- /.container-fluid -->
            </nav>    
        </div>
    

    CODEPEN DEMO 1

    您可以在 CSS 中操作导航链接的填充,这使您仍然可以使用 &lt;div class="nav_div col-sm-offset-5 col-sm-7"&gt;&lt;/div&gt; 而不会在屏幕调整大小时中断到新行。

    .navbar-nav > li > a{
       line-height: 50px;
       padding: 0 5px;
    }
    

    CODEPEN DEMO 2

    如果您想要垂直滚动,则需要减小列的大小,但是如果您使用引导程序,这不是构建导航的好方法。

    <div class="nav_div col-sm-offset-5 col-sm-3"> 
            <nav class="navbar navbar-default">
              <div class="container-fluid">
                <!-- Collect the nav links, forms, and other content for toggling -->
                  <ul class="nav navbar-nav navbar-center">
                    <li data-menuanchor="blablab" class="active"><a href="#blablab">blablab</a></li>
                    <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
                    <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
                    <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
                    <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
                    <li data-menuanchor="blablab"><a href="#blablab">blablab</a></li>
                  </ul>
              </div><!-- /.container-fluid -->
            </nav>    
        </div>
    

    CSS:

    .navbar{
       max-height: 40px;
       overflow-y: scroll;
    }
    

    CODEPEN DEMO 3

    【讨论】:

    • 感谢您的回复,但您不明白我搜索的内容。 O 搜索具有垂直滚动。然后如果窗口太小,用户可以在导航栏上滚动,它仍然是一行
    • 如果你想要垂直滚动,那你为什么要把导航栏放在折叠状态lol
    • 它适用于xs设备(手机),vetical适用于平板电脑或迷你笔记本电脑
    • 我更新了我的答案,看看底部,不幸的是你试图做的在引导程序中效率低下,我不推荐它。
    • 好的,谢谢,横向的会更好。我如何使用 js 脚本在中间有活动选项卡?
    猜你喜欢
    • 2011-08-09
    • 2014-06-25
    • 1970-01-01
    • 2017-02-08
    • 2015-10-21
    • 2021-05-31
    • 2017-06-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多