首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bootstrap 4-响应式水平导航

Bootstrap 4-响应式水平导航
EN

Stack Overflow用户
提问于 2017-01-21 19:34:08
回答 3查看 2.2K关注 0票数 2

我遇到了一个Bootstrap 4navs的问题,如果导航链接的容器宽度太小,那么导航链接就会突出。这通常是移动设备的情况。

下面是一个示例:http://codepen.io/anon/pen/ZLKGrx

代码语言:javascript
复制
<div class="container">
  <div class="row">
    <div class="col-6 offset-3 columnbg">
      <ul class="nav nav-pills">
        <li class="nav-item">
          <a class="nav-link active" href="#">LongTabName</a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">LongTabName</a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">LongTabName</a>
        </li>
        <li class="nav-item">
          <a class="nav-link disabled" href="#">LongTabName</a>
        </li>
        <li class="nav-item">
          <a class="nav-link disabled" href="#">LongTabName</a>
        </li>
      </ul>
    </div>
  </div>
</div>

我想要实现一些适合于较小显示器的东西。我该怎么做呢?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-01-21 23:04:42

col-6在最小的屏幕上只有一半的宽度,所以它不能准确地模拟移动屏幕的宽度。当导航的内容对于移动宽度来说太长时,您可以使用其他实用程序类来显示较少的内容(缩写。标签或仅仅是图标)。

代码语言:javascript
复制
<ul class="nav nav-pills">
        <li class="nav-item">
          <a class="nav-link active" href="#"><span class="hidden-xs-down">LongTabName</span><span class="hidden-sm-up">TN</span></a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#"><span class="hidden-xs-down">LongTabName</span><span class="hidden-sm-up">TN</span></a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#"><span class="hidden-xs-down">LongTabName</span><span class="hidden-sm-up">TN</span></a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#"><span class="hidden-xs-down">LongTabName</span><span class="hidden-sm-up">TN</span></a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#"><span class="hidden-xs-down">LongTabName</span><span class="hidden-sm-up">TN</span></a>
        </li>
      </ul>

http://www.codeply.com/go/WXqhlCDp9o

票数 0
EN

Stack Overflow用户

发布于 2017-01-21 22:01:10

Bootstrap是为移动端优先构建的。遇到这个问题的唯一原因是您没有完全实现navbar

代码语言:javascript
复制
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.1.1.slim.min.js" integrity="sha384-A7FZj7v+d/sdmMqp/nOQwliLvUsJfDHW+k9Omg/a/EheAdgtzNs3hpfag6Ed950n" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" crossorigin="anonymous"></script>

<nav class="navbar navbar-toggleable-md navbar-light bg-faded">
  <button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
    <span class="navbar-toggler-icon"></span>
  </button>
  <a class="navbar-brand" href="#">Navbar</a>

  <div class="collapse navbar-collapse" id="navbarSupportedContent">
    <ul class="navbar-nav mr-auto">
      <li class="nav-item active">
        <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">Link</a>
      </li>
      <li class="nav-item">
        <a class="nav-link disabled" href="#">Disabled</a>
      </li>
    </ul>
    <form class="form-inline my-2 my-lg-0">
      <input class="form-control mr-sm-2" type="text" placeholder="Search">
      <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
    </form>
  </div>
</nav>

票数 1
EN

Stack Overflow用户

发布于 2017-01-21 19:45:33

css中有一个技巧,可以帮助你根据屏幕width.height指定元素的大小:

代码语言:javascript
复制
@media (max-width: 600px) {
  .row {
     //change width here
  }
}

如你所见,当屏幕宽度小于600px (移动端应该更小)时,@media css将被覆盖;)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41778822

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档