我正在构建一个MEAN堆栈应用程序。目前,我正在尝试使用css媒体规则隐藏移动视图中的某些div元素。在移动视图中,使用按钮下拉菜单列出它,使用ng-click设置折叠为真/假。它按预期工作。但是在移动视图中,如果下拉列表被激活并且我将浏览器扩展到更大的尺寸,则菜单将出现在Web视图中,这是不期望的。任何人都可以帮忙吗?
以下是代码的一部分:
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse"
data-target="#sidbar" aria-expanded="false" aria-controls="sidbar" ng-init="sidCollapsed=true" ng-click="sidCollapsed=!sidCollapsed">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<div id="sidbar" collapse="sidCollapsed" class="sidbar">
<!--<ul class="nav navbar-nav navbar-left">-->
<ul class="nav navbar-nav">
<li><a ng-class="{'active':$location.path() == '/home'}" href="#/home">Home</a></li>
<li><a ng-class="{'active':$location.path() == '/profile'}" ng-show="user" href="#/profile">Profile</a></li>
<li><a ng-class="{'active':$location.path() == '/admin'}" ng-show="user && user.roles.indexOf('admin')>=0" href="#/admin">Admin</a></li>
<li><a ng-class="{'active':$location.path() == '/forms'}" ng-show="user" href="#/forms">Forms</a></li>
</ul>
</div>
css:
@media (min-width: 768px){
.sidbar {
display:none;
}}
答案 0 :(得分:1)
从外观上看,您正在使用Bootstrap,因此您可以使用hidden-xs
类
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#sidbar" aria-expanded="false" aria-controls="sidbar" ng-init="sidCollapsed=true" ng-click="sidCollapsed=!sidCollapsed">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<div id="sidbar" collapse="sidCollapsed" class="sidbar hidden-xs">
<!--<ul class="nav navbar-nav navbar-left">-->
<ul class="nav navbar-nav">
<li><a ng-class="{'active':$location.path() == '/home'}" href="#/home">Home</a>
</li>
<li><a ng-class="{'active':$location.path() == '/profile'}" ng-show="user" href="#/profile">Profile</a>
</li>
<li><a ng-class="{'active':$location.path() == '/admin'}" ng-show="user && user.roles.indexOf('admin')>=0" href="#/admin">Admin</a>
</li>
<li><a ng-class="{'active':$location.path() == '/forms'}" ng-show="user" href="#/forms">Forms</a>
</li>
</ul>
</div>
您可以在Bootstrap文档中找到更多可用的类来显示和隐藏依赖于浏览器大小的元素。