【问题标题】:Bootstrap 3: switching navbar with 2 rows on desktop to navbar with one row on mobileBootstrap 3:将桌面上 2 行的导航栏切换到移动设备上的 1 行导航栏
【发布时间】:2025-12-22 16:25:07
【问题描述】:

我尝试将桌面上的两行导航折叠到移动设备上的单行标题。第一行是顶栏,第二行是主导航。如何在移动设备上隐藏第二个栏以实现以下目标:

提前感谢您的帮助!

桌面

+-------------------------------------------------------------------------------+
|   BRAND                                               Call us | Cart | Login  | 
|-------------------------------------------------------------------------------|
|                              Link 1  |  Link 2 |  Link 3 |  Link 4 |  Link 5  |
+-------------------------------------------------------------------------------+

手机

+-------------------------------------------------------------------------------+
| TOGGLE_MAIN                           BRAND                        TOGGLE_TOP | 
+-------------------------------------------------------------------------------+

这是我目前拥有的:

Fiddle

【问题讨论】:

  • 你想要实现的目标是什么?

标签: css twitter-bootstrap-3 navbar responsive


【解决方案1】:

如果您想在移动视图中隐藏第二行,请在第二行 div 中的 navbar navbar-default 之后添加“hidden-xs”,如下所示:

<!-- Second Row -->
<div class="navbar navbar-default hidden-xs" id="header">

<div class="container">
<div class="row">  
<div class="navbar-header"> [...]

https://jsfiddle.net/bmuma5ow/13/

编辑//-------------

这是可行的解决方案(删除了“hidden-xs”并编辑了 CSS):

@media (max-width : 767px) {
  .navbar-brand {
    position: absolute;
    width: 100%;
    left: 0;
    text-align: center;
    margin:0 auto;
    z-index:-1;
  }
  .header #toggleTop {
    float:left;
    margin-left:15px;
  }
  .navbar-default {
      background-color: #fff;
      border-width: 0;
      margin-top: 0px;
      z-index: 5;
  }
  #navbar-collapse2 {
   margin-top: 50px;
  }
}

看这里:http://jsfiddle.net/bmuma5ow/15/

【讨论】:

  • 好的,第二行被隐藏了,但是使用“hidden-xs”折叠的菜单不会在点击时触发
  • 还有其他解决方案。抱歉可能出现语法错误...用我的智能手机完成此操作^^
  • nice ;) 如果您将我的答案标记为正确答案,那就太好了
  • 您能否用评论中的链接更新您的答案中的链接。谢谢。
  • 完成 :),并清理了 CSS。在我的智能手机上忘记了“}”:D