Twitter bootstrap 使引导3.0导航栏内容始终折叠

Twitter bootstrap 使引导3.0导航栏内容始终折叠,twitter-bootstrap,toggle,collapse,navbar,Twitter Bootstrap,Toggle,Collapse,Navbar,我需要使Bootstrap3.0的导航栏的一部分始终处于折叠状态 导航栏的实际部分: 链接 搜索表 登录表单 当我用手机打开网站时,我看到三个部分被折叠,我有三个图标来折叠每个内容 当我在PC中打开页面时,我会看到工具栏中的三个部分可见(而不是要折叠的按钮)。我需要什么?在PC视图中,仅隐藏登录表单并显示折叠该登录表单的按钮。无论分辨率如何,我都需要让登录按钮始终可见,并折叠部分。这是我的实际代码: <nav class="navbar navbar-inverse" role="na

我需要使Bootstrap3.0的导航栏的一部分始终处于折叠状态

导航栏的实际部分:

  • 链接
  • 搜索表
  • 登录表单
当我用手机打开网站时,我看到三个部分被折叠,我有三个图标来折叠每个内容

当我在PC中打开页面时,我会看到工具栏中的三个部分可见(而不是要折叠的按钮)。我需要什么?在PC视图中,仅隐藏登录表单并显示折叠该登录表单的按钮。无论分辨率如何,我都需要让登录按钮始终可见,并折叠部分。这是我的实际代码:

<nav class="navbar navbar-inverse" role="navigation">
    <div class="navbar-header">
        <!--Toggles -->
        <button type="button" class="navbar-toggle boton" 
                data-toggle="collapse" data-target="#sesion">
            <span class="glyphicon glyphicon-user"></span>
        </button>
        <button type="button" class="navbar-toggle boton"
                data-toggle="collapse" data-target="#links" id="menuToggle">
            <span class="glyphicon glyphicon-align-justify"></span>
        </button>
        <button type="button" class="navbar-toggle boton" 
                data-toggle="collapse" data-target="#buscar">
            <span class="glyphicon glyphicon-search"></span>
        </button>
        <!--Logo en vista Mobile -->
        <a class="navbar-brand" style="padding: 10px 0 0 15px" href="#">
            <span class="visible-xs">
                <img src="img/nsnow.png" width="37" height="36" alt="Logo" />
            </span>
        </a>
    </div>

    <ul class="collapse navbar-collapse nav navbar-nav" id="links">
        <!--Links -->
        <li><a style="padding-left: 40px"></a></li>
        <li class="botonMenu" id="boton_generos"><a >Géneros</a></li>
        <li class="botonMenu" id="boton_categorias"><a >Categorías</a></li>
        <li class="botonMenu" id="boton_senales"><a >Señales</a></li>
    </ul>

    <div class="collapse navbar-collapse" id="buscar">
        <!--Buscar -->
        <form class="navbar-form navbar-right" role="search">
            <div class="form-group">
                <input type="text" class="form-control" placeholder="Buscar">
            </div>
            <button type="submit" class="btn boton">
                <span class="glyphicon glyphicon-search"></span>
            </button>
        </form>
    </div>

    <div class="collapse navbar-collapse" id="sesion">
        <!--Buscar -->
        <form class="navbar-form navbar-right" role="search">
            <div class="form-group">
                <input type="text" class="form-control" placeholder="Usuario">
                <input type="text" class="form-control" placeholder="Contraseña">
            </div>
            <button type="submit" class="btn boton">
                <span class="glyphicon glyphicon-search"></span>
            </button>
         </form>
     </div>
</nav>

  • Géneros 分类
  • 销售

您必须覆盖某些css以使其保持折叠状态

在本例中,我使“用户登录”按钮保持折叠状态

css:

html:

基本相同,只是我在登录用户按钮元素中添加了id
login btn

<button type="button" id="login-btn" class="navbar-toggle boton" data-toggle="collapse" data-target="#sesion">
    <span class="glyphicon glyphicon-user"></span>
 </button>

对于使用较少变量的用户,请转到变量。减少变量并更改:

@grid-float-breakpoint:     @screen-sm-min;
致:

一句话的变化就像一个符咒。请确保使用大量不合实际的像素(em对我不起作用)。

尝试以下方法:

.navbar-toggle {
    display: block;
}

.navbar-collapse.collapse {
    display: none !important;
}

如果不能更改较少的变量,还可以在768px(smartphone bounder)之后重写引导类。Bellow是使用下拉菜单覆盖基本导航栏的工作代码。并不是所有的类都在下面被重写,所以根据您使用的内容,您可能需要重写其他类

    @media (min-width: 768px){
        .navbar-nav .open .dropdown-menu {
            position: static;
            float: none;
            width: auto;
            margin-top: 0;
            background-color: transparent;
            border: 0;
            -webkit-box-shadow: none;
            box-shadow: none;
        }
        .navbar-nav .open .dropdown-menu > li > a {
            line-height: 20px;
        }
        .navbar-nav .open .dropdown-menu > li > a,
        .navbar-nav .open .dropdown-menu .dropdown-header {
            padding: 5px 15px 5px 25px;
        }
        .dropdown-menu > li > a {
            display: block;
            padding: 3px 20px;
            clear: both;
            font-weight: normal;
            line-height: 1.42857143;
            color: #333;
            white-space: nowrap;
        }
        .navbar-header {
            float: none;
        }
        .navbar-toggle {
            display: block;
        }
        .navbar-collapse {
            border-top: 1px solid transparent;
            box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
        }
        .navbar-collapse.collapse {
            display: none!important;
        }
        .navbar-nav {
            float: none!important;
            /*margin: 7.5px -15px;*/
            margin: 7.5px 50px 7.5px -15px
        }
        .navbar-nav>li {
            float: none;
        }
        .navbar-nav>li>a {
            padding-top: 10px;
            padding-bottom: 10px;
        }
        .navbar-text {
            float: none;
            margin: 15px 0;
        }
        /* since 3.1.0 */
        .navbar-collapse.collapse.in { 
            display: block!important;
        }
        .collapsing {
            overflow: hidden!important;
        }
    }

基于@cfx answer,使用SASS覆盖可变网格浮点断点(我更喜欢):

$grid-float-breakpoint:     999999999px;

为我工作。谢谢。与其破坏源代码,不如创建一个新的less文件,导入引导主less文件,然后再次声明上述变量。当它编译时,它使用引导源代码中覆盖的值。这就是less的优点。这可能有助于:
    @media (min-width: 768px){
        .navbar-nav .open .dropdown-menu {
            position: static;
            float: none;
            width: auto;
            margin-top: 0;
            background-color: transparent;
            border: 0;
            -webkit-box-shadow: none;
            box-shadow: none;
        }
        .navbar-nav .open .dropdown-menu > li > a {
            line-height: 20px;
        }
        .navbar-nav .open .dropdown-menu > li > a,
        .navbar-nav .open .dropdown-menu .dropdown-header {
            padding: 5px 15px 5px 25px;
        }
        .dropdown-menu > li > a {
            display: block;
            padding: 3px 20px;
            clear: both;
            font-weight: normal;
            line-height: 1.42857143;
            color: #333;
            white-space: nowrap;
        }
        .navbar-header {
            float: none;
        }
        .navbar-toggle {
            display: block;
        }
        .navbar-collapse {
            border-top: 1px solid transparent;
            box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
        }
        .navbar-collapse.collapse {
            display: none!important;
        }
        .navbar-nav {
            float: none!important;
            /*margin: 7.5px -15px;*/
            margin: 7.5px 50px 7.5px -15px
        }
        .navbar-nav>li {
            float: none;
        }
        .navbar-nav>li>a {
            padding-top: 10px;
            padding-bottom: 10px;
        }
        .navbar-text {
            float: none;
            margin: 15px 0;
        }
        /* since 3.1.0 */
        .navbar-collapse.collapse.in { 
            display: block!important;
        }
        .collapsing {
            overflow: hidden!important;
        }
    }
$grid-float-breakpoint:     999999999px;