【发布时间】:2016-07-13 21:11:33
【问题描述】:
如果没有 li 或可见 li,有没有办法使用 ng-hide 或 ng-if(即在元素内部,而不是控制器)隐藏 #navbar-nav ul?
也许这也可以扩展为隐藏切换按钮,因为没有什么可显示的。
目前如果没有列表项,那么你仍然可以切换(上下滑动)导航栏,但看起来不太好。
我看到的大多数其他问题都与 ng-repeat 相关
<div class="navbar navbar-inverse navbar-fixed-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">Brand</a>
</div>
<div class="collapse navbar-collapse">
<ul class="nav navbar-nav" id="navbar-nav">
<li class="active hidden-xs">
<a href="#">Home</a>
</li>
<li class="hidden-xs">
<a href="#products">Products</a>
</li>
<li class="hidden-xs">
<a href="#overview">Overview</a>
</li>
</ul>
</div>
<!--/.nav-collapse -->
</div>
【问题讨论】:
-
为什么你要使用 ng-show, ng-if 而你的菜单是静态的而不是有角度的?你已经在你的菜单项上使用了'hidden-xs',为什么不把'hidden-xs'放在切换按钮上,因为你已经知道xs上不会有li。
-
这只是一个例子。隐藏它们是动态的。如果列表项不止这些,那么我希望下拉菜单仍能正常工作。
标签: html css angularjs angular-ng-if ng-hide