【问题标题】:Two Responsive Nav bar in Bootsrap Page ConflictsBootstrap 页面冲突中的两个响应式导航栏
【发布时间】:2013-04-16 00:53:14
【问题描述】:

使用 Bootstrap 响应式框架我必须在我的页面中使用两个导航栏。它们工作正常,但在切换模式下,单击图标会列出两个“nav-collapce”项目!

我尝试为第二类重命名折叠类名称,但没有成功。你能告诉我如何在没有任何冲突的情况下运行两次“nav-collapse collapse”吗?

<div class="navbar">
<div class="navbar-inner">
    <div class="container">
        <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        </a>
        <a class="brand" href="#">Candete</a>
        <div class="nav-collapse collapse">
            <!-- .nav, .navbar-search, .navbar-form, etc -->
            <ul class="nav">
                <li class="active"><a href="#">Home</a></li>
                <li><a href="#">Products</a></li>
                <li><a href="#">Contact Us</a></li>
                <li><a href="#">About Us</a></li>
                <li><a href="#">All Products</a></li>
            </ul>
        </div>
    </div>
</div>
</div>

<div class="navbar">
<div class="navbar-inner">
    <div class="container">
        <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        </a>
        <a class="brand" href="#">Product Category</a>
        <div class="nav-collapse collapse">
            <!-- .nav, .navbar-search, .navbar-form, etc -->
            <ul class="nav">
                <li><a href="#">Gold</a></li>
                <li><a href="#">Copper</a></li>
                <li><a href="#">Zinc</a></li>
                <li><a href="#">Metals</a></li>
                <li><a href="#">Other</a></li>
            </ul>
        </div>
    </div>
</div>

【问题讨论】:

    标签: twitter-bootstrap navbar


    【解决方案1】:

    在 Twitter Bootstrap 中,.nav-collapse 是重要的类,所以不要更改它。什么是最好的解决方案?

    在线&lt;div class="nav-collapse collapse"&gt; 添加一些新类,我们称之为.menu1。所以新代码将是&lt;div class="nav-collapse collapse menu1"&gt;。然后将data-target=".nav-collapse" 更改为data-target=".menu1"

    您可以对第二个菜单和一些新的.menu2 类做同样的事情,或者保持原样(它会起作用,因为两个菜单有不同的data-target)。

    这是工作演示http://jsfiddle.net/xmLDd/

    【讨论】:

      【解决方案2】:

      nav-collapse 元素提供唯一 ID 并使用 ID 定位它们:

      <div class="navbar">
        <div class="navbar-inner">
          <div class="container">
            <a class="btn btn-navbar" data-toggle="collapse" data-target="#nav-primary">
              ...
            </a>
            <div class="nav-collapse collapse" id="nav-primary">
              ...
            </div>
          </div>
        </div>
      </div>
      
      <div class="navbar">
        <div class="navbar-inner">
          <div class="container">
            <a class="btn btn-navbar" data-toggle="collapse" data-target="#nav-secondary">
              ...
            </a>
            ...
            <div class="nav-collapse collapse" id="nav-secondary">
              ...
            </div>
          </div>
      </div>
      

      【讨论】:

      • 反对票是怎么回事?这与接受的答案相同,但使用 ID 而不是一次性类(实际上是一个 ID)。
      • 对不起,我不是故意的。一定是不小心点击了箭头 - 编辑你的答案,我会删除反对票。
      • id="nav-primary&gt; 上缺少一个结束引号 -​​ 我试图为您编辑它,但不允许我进行单字符编辑。 :(
      • 谢谢,@snipe。我修正了我的答案。
      • 嗨,我如何区分两个导航栏折叠在一个导航栏中呢?我已经命名了不同的数据目标,但这仍然无法正常工作......
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-13
      • 2017-01-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多