7

ナビゲーション バーにドロップダウンを追加したいのですが、ブラウザーのサイズが狭い幅に変更されたときに、ドロップダウンがナビゲーション バーに表示されたままになり、ナビゲーションの折りたたみに含まれないようにします。

以下のhtmlが機能します。ただし、ページのサイズが変更されると、ドロップダウンが次の行にドロップされ、ナビゲーション バーに展開されて表示されるため、非常に深いナビゲーション バーが残ります。

私はbootstrap-collapse.jsとbootstrap-dropdown.jsを呼び出しています。

誰でもアイデアはありますか?

<div class="navbar navbar-fixed-top">
  <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="#">Project</a>
      <div class="nav-collapse">
        <ul class="nav">
          <li class="active"><a href="#">Home</a></li>
          <li><a href="#about">About</a></li>
          <li><a href="#contact">Contact</a></li>
        </ul>
      </div><!--/.nav-collapse -->
      <div class="container">
        <ul class="nav pull-right">
            <li class="divider-vertical"></li>
            <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown">Sharing<b class="caret"></b></a>
                <ul class="dropdown-menu">
                    <li><a href="#">Twitter</a></li>
                    <li><a href="#">Facebook</a></li>
                    <li><a href="#">Google+</a></li>
                </ul>
            </li>
        </ul>
      </div>
    </div>
  </div>
</div>
4

2 に答える 2

11

ブートストラップの開発者の 1 人であるMark Otto によると、次のように述べています。

navbar の .nav 内のすべてのドロップダウンが影響を受けます。現在、この動作を防ぐ方法は提供していません。

ただし、折りたたまれたナビゲーション バーに折りたたまれていないドロップダウンを含めることは可能です。これは、次の 3 つの方法のいずれかで実行できます。

  1. ドロップダウン ( ) にデータ属性を追加してdata-no-collapse="true"、レスポンシブ セレクターを修正します。
  2. ドロップダウンのクラス ( class="dropdown-menu-no-collapse") を置き換えて、そのスタイルをゼロから再構築します。
  3. ドロップダウン ( ) に別のクラスを追加してclass="dropdown-menu no-collapse、レスポンシブ スタイルをオーバーライドします。

何をすべきかを説明するブログ投稿を書きました。最初の方法では編集が必要bootstrap-responsive.cssで、2 番目の方法では変更が必要bootstrap.cssです。3 番目の方法では、ブートストラップの CSS を変更する必要はありませんが、維持するのはかなり困難です。

于 2012-03-16T14:45:31.663 に答える
0

これは、コンテナが右側にパディングされているか、そのようなものであるためです。margin-right をそれぞれ使用して margin-left : -30px; それぞれ右端、左端の順不同リスト。

あまりきれいではありませんが、修正するまで...

于 2012-03-14T13:47:59.513 に答える