当模态弹出时,右侧滚动消失,主要竞争不移动 - 所以这很好,但导航菜单向右移动填充滚动空间。 然后,当我关闭时,弹出滚动显示并且菜单向后移动。 任何想法如何防止菜单转移? 使用Bootstrap v3.3.1
这就是我的菜单的样子:
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="/" id="navbar-brand">MySite</a>
</div>
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li class="home">
<a href="/" class="btn_main"><i class="fa fa-home" title="home"></i></a>
</li>
<li><a href="/contact">About</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li><a href="/account/login" id="loginLink">Login</a></li>
</ul>
</div>
</div>
这是我的模态弹出窗口:
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="exampleModalLabel">Title</h4>
</div>
<div class="modal-body">
<form name="form-contact" id="form-contact" class="form-validation">
<div class="form-group">
<input type="email" class="form-control" placeholder="Enter your email" ng-model="contact.email" required="">
</div>
<div class="form-group hide">
<textarea class="form-control" rows="6" placeholder="Type your message"></textarea>
</div>
<input type="submit" id="submit-form" class="hidden">
</form>
</div>
<div class="modal-footer">
<label for="submit-form" class="btn btn-warning font-bold">Click!</label>
</div>
</div>
</div>
更新 我刚刚在https://github.com/twbs/bootstrap/issues/14040
找到了解决方法.modal-open .navbar-fixed-top,
.modal-open .navbar-fixed-bottom {
padding-right: 17px;
}
这是否意味着它是bootstrap中的错误?
更新2 以上行为适用于所有最新的基于WebKit的浏览器,但只是检查了IE 12,并且当模态出现时整个页面向右移动。