【问题标题】:remove responsiveness to nav bar删除对导航栏的响应
【发布时间】:2015-03-15 23:49:08
【问题描述】:

我使用<div id="mws-nav-collapse"> 进行响应;成功了。

现在我不需要响应,所以当我删除这个 div 时,我没有在移动视图中查看我的导航栏项目。如何在不使用响应性的情况下使我的 nav-bar 项目在移动视图中可见。

这是我的代码:

<div id="mws-navigation">
    <ul id="link">
        <li data-related="c" class="" id="c1"><a href="#c" title=""   data-toggle="tooltip" class="basic"><i class="icon-calendar"></i>AAA</a></li>
        <li data-related="e" class="" id="e1"><a href="#e" title="" data-toggle="tooltip" class="basic"><i class="icon-tag"></i>BBB</a></li>
        <li data-related="f" class="" id="f1"><a href="#f" data-toggle="tooltip" class="basic"><i class="icon-hdd"></i>CCC</a></li> 
    </ul>
</div>

我删除的 div

<div id="mws-nav-collapse">
    <span></span>
    <span></span>
    <span></span>
</div>

【问题讨论】:

    标签: css twitter-bootstrap twitter-bootstrap-3 responsive-design


    【解决方案1】:

    在引导程序中可用docs

    发生了什么变化

    请注意缺少&lt;meta name="viewport" content="width=device-width, initial-scale=1"&gt;,它会禁用移动设备中网站的缩放功能。另外,我们重新设置了容器的宽度,基本上就可以了。 关于导航栏

    作为提示,导航栏组件在这里相当棘手,因为显示它的样式相当具体和详细。覆盖以确保桌面样式显示不像人们想要的那样高性能或时尚。请注意,在使用导航栏时,在此示例之上构建时可能存在潜在问题。 浏览器、滚动和固定元素

    非响应式布局突出了固定元素的一个主要缺点。当视口变得比页面内容窄时,任何固定组件(例如固定导航栏)都将无法滚动。换句话说,给定 970 像素的非响应式容器宽度和 800 像素的视口,您可能会隐藏 170 像素的内容。

    没有办法解决这个问题,因为它是默认的浏览器行为。唯一的解决方案是响应式布局或使用非固定元素。

    示例代码:

    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
    
        <title>Non-responsive Template for Bootstrap</title>
    
        <link href="css/bootstrap.min.css" rel="stylesheet">
    
        <link href="non-responsive.css" rel="stylesheet">
    </head>
    
      <body>
    
        <!-- Fixed navbar -->
        <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-expanded="false">Dropdown <span class="caret"></span></a>
                  <ul class="dropdown-menu" role="menu">
                    <li><a href="#">Action</a></li>
                    <li><a href="#">Another action</a></li>
                    <li><a href="#">Something else here</a></li>
                    <li 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>
              <form class="navbar-form navbar-left" role="search">
                <div class="form-group">
                  <input type="text" class="form-control" placeholder="Search">
                </div>
                <button type="submit" class="btn btn-default">Submit</button>
              </form>
              <ul class="nav navbar-nav navbar-right">
                <li><a href="#">Link</a></li>
                <li><a href="#">Link</a></li>
                <li><a href="#">Link</a></li>
              </ul>
            </div><!--/.nav-collapse -->
          </div>
        </nav>
    
        <div class="container">
        The text
        </div>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
        <script src="js/bootstrap.min.js"></script>
      </body>
    </html>
    

    non-responsive.css

    body {
      padding-top: 70px;
      padding-bottom: 30px;
    }
    
    body,
    .navbar-fixed-top,
    .navbar-fixed-bottom {
      min-width: 970px;
    }
    .lead {
      font-size: 16px;
    }
    .page-header {
      margin-bottom: 30px;
    }
    .page-header .lead {
      margin-bottom: 10px;
    }
    .container {
      width: 970px;
      max-width: none !important;
    }
    
    .col-xs-4 {
      padding-top: 15px;
      padding-bottom: 15px;
      background-color: #eee;
      background-color: rgba(86,61,124,.15);
      border: 1px solid #ddd;
      border: 1px solid rgba(86,61,124,.2);
    }
    
    .container .navbar-header,
    .container .navbar-collapse {
      margin-right: 0;
      margin-left: 0;
    }
    .navbar-header {
      float: left;
    }
    .navbar-collapse {
      display: block !important;
      height: auto !important;
      padding-bottom: 0;
      overflow: visible !important;
      visibility: visible !important;
    }
    
    .navbar-toggle {
      display: none;
    }
    .navbar-collapse {
      border-top: 0;
    }
    
    .navbar-brand {
      margin-left: -15px;
    }
    .navbar-nav {
      float: left;
      margin: 0;
    }
    .navbar-nav > li {
      float: left;
    }
    .navbar-nav > li > a {
      padding: 15px;
    }
    
    .navbar-nav.navbar-right {
      float: right;
    }
    
    .navbar .navbar-nav .open .dropdown-menu {
      position: absolute;
      float: left;
      background-color: #fff;
      border: 1px solid #ccc;
      border: 1px solid rgba(0, 0, 0, .15);
      border-width: 0 1px 1px;
      border-radius: 0 0 4px 4px;
      -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
              box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
    }
    .navbar-default .navbar-nav .open .dropdown-menu > li > a {
      color: #333;
    }
    .navbar .navbar-nav .open .dropdown-menu > li > a:hover,
    .navbar .navbar-nav .open .dropdown-menu > li > a:focus,
    .navbar .navbar-nav .open .dropdown-menu > .active > a,
    .navbar .navbar-nav .open .dropdown-menu > .active > a:hover,
    .navbar .navbar-nav .open .dropdown-menu > .active > a:focus {
      color: #fff !important;
      background-color: #428bca !important;
    }
    .navbar .navbar-nav .open .dropdown-menu > .disabled > a,
    .navbar .navbar-nav .open .dropdown-menu > .disabled > a:hover,
    .navbar .navbar-nav .open .dropdown-menu > .disabled > a:focus {
      color: #999 !important;
      background-color: transparent !important;
    }
    
    .navbar-form {
      float: left;
      width: auto;
      padding-top: 0;
      padding-bottom: 0;
      margin-right: 0;
      margin-left: 0;
      border: 0;
      -webkit-box-shadow: none;
              box-shadow: none;
    }
    
    .navbar-form .form-group {
      display: inline-block;
      margin-bottom: 0;
      vertical-align: middle;
    }
    
    .navbar-form .form-control {
      display: inline-block;
      width: auto;
      vertical-align: middle;
    }
    
    .navbar-form .form-control-static {
      display: inline-block;
    }
    
    .navbar-form .input-group {
      display: inline-table;
      vertical-align: middle;
    }
    
    .navbar-form .input-group .input-group-addon,
    .navbar-form .input-group .input-group-btn,
    .navbar-form .input-group .form-control {
      width: auto;
    }
    
    .navbar-form .input-group > .form-control {
      width: 100%;
    }
    
    .navbar-form .control-label {
      margin-bottom: 0;
      vertical-align: middle;
    }
    
    .navbar-form .radio,
    .navbar-form .checkbox {
      display: inline-block;
      margin-top: 0;
      margin-bottom: 0;
      vertical-align: middle;
    }
    
    .navbar-form .radio label,
    .navbar-form .checkbox label {
      padding-left: 0;
    }
    
    .navbar-form .radio input[type="radio"],
    .navbar-form .checkbox input[type="checkbox"] {
      position: relative;
      margin-left: 0;
    }
    
    .navbar-form .has-feedback .form-control-feedback {
      top: 0;
    }
    

    你可以在examples找到这个

    【讨论】:

    • 非常感谢@Sujay...我认为使用响应式 bcoz 会更好地解决非响应式的缺点...无论如何,非常感谢您的指导 :): )
    • 如果@Sujay 的答案是您正在寻找的,那么请接受它作为答案。
    猜你喜欢
    • 1970-01-01
    • 2021-06-14
    • 2018-01-27
    • 2021-11-20
    • 1970-01-01
    • 2016-06-10
    • 1970-01-01
    • 2014-12-14
    相关资源
    最近更新 更多