我有这个小样本的bootstrap nav-pills我有下拉部分可以工作,但试图想出是否有办法让它像手风琴一样打开和关闭,而不是下拉/
<ul class="nav nav-pills nav-stacked">
<li class="active"><a href="#">Home</a></li>
<li class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" href="#">Menu 1 <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="#">Submenu 1-1</a></li>
<li><a href="#">Submenu 1-2</a></li>
<li><a href="#">Submenu 1-3</a></li>
</ul>
</li>
<li><a href="#">Menu 2</a></li>
<li><a href="#">Menu 3</a></li>
</ul>
答案 0 :(得分:1)
如果您希望子菜单具有手风琴行为,而不是使用下拉组件,最好使用折叠组件。
如果是代码,则需要使用类.collapse
和ID
<div id="demo" class="collapse">
<ul>
<li><a href="#">Submenu 1-1</a></li>
<li><a href="#">Submenu 1-2</a></li>
<li><a href="#">Submenu 1-3</a></li>
</ul>
</div>
然后,您需要在要使用的元素中指定数据属性,以打开和关闭子菜单。
<li>
<a data-toggle="collapse" data-target="#demo" href="javascript:void(0)">
Menu 1 <span class="caret"></span>
</a>
<div id="demo" class="collapse">
<!-- Content of your collapsible element -->
</div>
</div>
</li>
以下是完整代码:
<ul class="nav nav-pills nav-stacked">
<li class="active"><a href="#">Home</a></li>
<li>
<a data-toggle="collapse" data-target="#demo" href="javascript:void(0)">
Menu 1 <span class="caret"></span>
</a>
<div id="demo" class="collapse">
<ul>
<li><a href="#">Submenu 1-1</a></li>
<li><a href="#">Submenu 1-2</a></li>
<li><a href="#">Submenu 1-3</a></li>
</ul>
</div>
</li>
<li><a href="#">Menu 2</a></li>
<li><a href="#">Menu 3</a></li>
在这里你可以看到它的实际效果。此外,我添加了一些自定义CSS,使您的子菜单在视觉上看起来更好:
#demo ul {
list-style-type: none;
}
#demo ul li:first-child {
margin-top: 10px;
}
#demo ul li {
margin-bottom: 10px;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
<ul class="nav nav-pills nav-stacked">
<li class="active"><a href="#">Home</a></li>
<li>
<a data-toggle="collapse" data-target="#demo" href="javascript:void(0)">
Menu 1 <span class="caret"></span>
</a>
<div id="demo" class="collapse">
<ul>
<li><a href="#">Submenu 1-1</a></li>
<li><a href="#">Submenu 1-2</a></li>
<li><a href="#">Submenu 1-3</a></li>
</ul>
</div>
</li>
<li><a href="#">Menu 2</a></li>
<li><a href="#">Menu 3</a></li>
</ul>
&#13;