Bootstrap navbar 在自定义宽度上折叠媒体查询

Posted

技术标签:

【中文标题】Bootstrap navbar 在自定义宽度上折叠媒体查询【英文标题】:Bootstrap navbar collapse media-query on custom width 【发布时间】:2014-04-15 07:03:18 【问题描述】:

大家好,我想修改导航栏以便在@screen-md :992px; 上折叠。 我修改了navbar.less,但还是不行,不知道怎么办。

那么我该如何修改@grid-float-breakpoint 变量,以使该菜单在自定义媒体查询大小时折叠?

FIDDLE:

【问题讨论】:

【参考方案1】:

如果您使用的是 Twitter Bootstrap,则响应式折叠已经内置。您可能只需要使用菜单中的类来调用它。但这是我在使用过的大多数 Bootstrap 应用程序中使用的 css,包括我现在正在使用的那个

@media(min-width:768px) 
   .navbar-collapse 
    width: auto;
    /* more code here */

将最小宽度更改为您希望它折叠的宽度。

【讨论】:

尝试将您的媒体查询放入我的小提琴 width min width:1200px:|不工作。 从技术上讲,我说的和上面的答案一样,只是我没有为你编写代码,因为你应该自己做。但是好的,重要的是你解决了它 我在寻找答案而不是提示。还是谢谢你。 好吧,很抱歉成为坏消息的承担者,但我们不应该给你答案。这可能是家庭作业。但总的来说,如果你不让你的齿轮转动,你永远不会弄明白。关于开发的一个真实事实 = 花 1 小时创建和 7 次调试 :) 干杯【参考方案2】:

你可以像这样改变3.1中的折叠点..

@media (max-width: 992px) 
    .navbar-header 
        float: none;
    
    .navbar-left,.navbar-right 
        float: none !important;
    
    .navbar-toggle 
        display: block;
    
    .navbar-collapse 
        border-top: 1px solid transparent;
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
    
    .navbar-fixed-top 
        top: 0;
        border-width: 0 0 1px;
    
    .navbar-collapse.collapse 
        display: none!important;
    
    .navbar-nav 
        float: none!important;
        margin-top: 7.5px;
    
    .navbar-nav>li 
        float: none;
    
    .navbar-nav>li>a 
        padding-top: 10px;
        padding-bottom: 10px;
    
    .collapse.in
        display:block !important;
    

http://www.bootply.com/120951


Bootstrap 4 中,更改断点更容易。 See this answer

【讨论】:

终于找到了适用于 v3(或至少 3.3)的解决方案!! 一点点反对:作为中型设备的起始像素为 992 像素,媒体查询不应该设置为 991 像素的最大宽度吗?【参考方案3】:

variables.less

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

@grid-float-breakpoint: @screen-md-min;  

或者你想要的任何其他宽度。

用这种方法轻松无痛。

【讨论】:

【参考方案4】:

这是我用来解决这个问题的代码,只需将其添加到您的样式表中即可。

@media (max-width: 1992px) 
    .navbar-header 
        float: none;
    
    .navbar-left,.navbar-right 
        float: none !important;
    
    .navbar-toggle 
        display: block;
    
    .navbar-collapse 
        border-top: 1px solid transparent;
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
    
    .navbar-fixed-top 
        top: 0;
        border-width: 0 0 1px;
    
    .navbar-collapse.collapse 
        display: none!important;
    
    .navbar-nav 
        float: none!important;
        margin-top: 7.5px;
    
    .navbar-nav>li 
        float: none;
    
    .navbar-nav>li>a 
        padding-top: 10px;
        padding-bottom: 10px;
    
    .collapse.in
        display:block !important;
    

【讨论】:

你能解释一下这个 CSS 是如何解决这个问题的吗?

以上是关于Bootstrap navbar 在自定义宽度上折叠媒体查询的主要内容,如果未能解决你的问题,请参考以下文章

Twitter Bootstrap 3 增加 navbar-header div 宽度

Bootstrap 4 Navbar 列大小不是 100%

Angular Bootstrap 4 Navbar 不会切换和 navbar-dark 问题

Bootstrap 左侧导航栏如何实现

bootstrap navbar-static-top 菜单在两行中断

Bootstrap 4 - 如何在导航栏中进行 100% 宽度的搜索输入?