Bootstrap 3 RC2 で次のレイアウトを取得する最善の方法を見つけようとしています。
左側の項目はプライマリ ナビゲーション UL で、サイド アイコンは追加の UL、または共通の外観を共有する単なるリンクのセットですが、コンテンツのドロップダウンまたは非表示/表示の切り替えを提供します (グループのリスト、しかし他の人のためにインタラクティブな検索とカートの表示を行うことを望んでいます)。
現在、このコードを実行すると、これは正常に再生されます。
<div class="nav-wrapper" style="height: 56px;">
<div class="nav-primary affix-top">
<nav class="navbar" role="navigation">
<div class="container">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-primary-collapse">
<span class="sr-only">Primary navigation</span>
<i class="icon-list"></i>
</button>
<button type="button" class="navbar-toggle pull-right" data-toggle="collapse" data-target=".navbar-cart-collapse">
<span class="sr-only">Itinerary navigation</span>
<span class="icon-calendar-empty"></span>
</button>
<button type="button" class="navbar-toggle pull-right" data-toggle="collapse" data-target=".navbar-user-collapse">
<span class="sr-only">User navigation</span>
<span class="icon-user"></span>
</button>
<button type="button" class="navbar-toggle pull-right" data-toggle="collapse" data-target=".navbar-search-collapse">
<span class="sr-only">Search navigation</span>
<span class="icon-search"></span>
</button>
</div>
<div class="row">
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="col-lg-8 col-sm-8 navbar-collapse navbar-primary-collapse in" style="height: auto;">
<ul id="navPrimary" class="nav navbar-nav">
<li class="first" id="navRegions"><a href="/regions/">Regions</a></li>
<li id="navWineries"><a href="/wineries/">Wineries</a></li>
<li id="navExplore"><a href="/explore/">Explore</a></li>
<li class="last" id="navEvents"><a href="/events/">Events</a></li>
</ul>
</div><!-- /.navbar-primary-collapse -->
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="col-lg-4 col-sm-4 pull-right collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li>
<a href="#"><i class="icon-search"></i></a>
<div id="prime-nav-searchform" class="dropdown-menu"> <form method="get" action="http://antonibotev.com/themes/nova/" class="search-form">
<i class="icon-search searchform-icon"></i>
<input class="bluebox-search-input" type="text" name="s" value="Search..." onfocus="" onblur="" autocomplete="off" data-view-all-title="Show All Results" data-original-title="">
<input type="submit" class="submit" value="" onfocus="" onblur="">
<div class="search-form-autocomplete active">
<div class="search-results-autocomplete">
</div>
</div>
</form>
</div>
</li>
<li class="dropdown"><a href="#" class="dropdown-toggle"><i class="icon-user"></i> <b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="#">Log In</a></li>
<li><a href="#">Sign Up</a></li>
<li><a href="#">How It Works</a></li>
<li><a href="#">Need Help?</a></li>
</ul>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="icon-calendar-empty"></i> <span>4</span></a>
<ul class="dropdown-menu">
<li><a href="#">View Itinerary</a></li>
<li><a href="#">Check Out</a></li>
<li><a href="#">Need Help?</a></li>
</ul>
</li>
</ul>
</div><!-- /.navbar-collapse -->
</div>
</div>
</nav>
</div>
</div>
そして、これは最初の折りたたみではうまく機能しますが、追加のものが必要ですが、現在、それらは同じ UL に存在する必要があるため、他の 3 つの折りたたみ div を作成する際に明らかに問題が生じます。
検索またはカートをクリックすると、折りたたみを切り替えるコードもあります。一度に 1 つだけ表示されます。1 つを開き、もう 1 つを閉じます。
// mobile toggles - make sure when one navbar-collapse is open, that the others are closed
$('.navbar-collapse').on('show.bs.collapse', function (e) {
// hide open menus
$('.navbar-collapse').each(function(){
if ($(this).hasClass('in')) {
$(this).collapse('toggle');
}
});
});
small ブレークポイントと xs ブレークポイントは同じレイアウトを表示する必要がありますが、もちろんプライマリ ナビゲーションをアイコンに置き換えます。アイデアは、メニューにリストが含まれているか検索フォームが含まれているかに関係なく、クリックまたはタップしてそれぞれのメニューを切り替えるだけの 4 つのアイコンがあることです。
助言がありますか?