
[英]Bootstrap 3.0's row have margin-left 15px and margin-right 15px
[英]Bootstrap 3 navigation bar right margin is not supposed to be -15px
在我的网页中,我有一个 Bootstrap 3 导航栏:
<body>
<nav class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="navbar-header">
<a class="navbar-brand" href="#">Teachlab</a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav navbar-right">
<li><%= link_to "Home", '#' %></li>
<li><%= link_to "Help", '#' %></li>
<li><%= link_to "Sign in", '#' %></li>
</ul>
</div>
</nav>
<div class="container">
<%= yield %>
</div>
</body>
问题是导航要靠近屏幕边缘。 如果我从导航栏中删除navbar-fixed-top ,它会按我的意愿工作。
有什么提示吗?
从 3.1.1 开始使用 .container-fluid。
结构不正确。 .navbar-right 位于 .collapse 容器上,而不是 ul 上。
示例:http: //jsbin.com/eQIROsE/2/edit
<div class="navbar navbar-fixed-top navbar-default">
<div class="navbar-header">
<a class="navbar-brand" href="#">Project name</a>
<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>
</div>
<div class="navbar-collapse collapse navbar-right">
<ul class="nav navbar-nav">
<li class="active"><a href="#">Home</a>
</li>
<li><a href="#about">About</a>
</li>
<li><a href="#contact">Contact</a>
</li>
</ul>
</div>
<!--/.navbar-collapse -->
</div>
我最终覆盖了以下内容:
.navbar-nav.navbar-right:last-child {
margin-right: 0;
}
但也许还有另一种解决方案?
它已损坏, 无法在3.x
中修复。 破解它。
.navbar-right {
margin-right: 0px;
}
解决方案可能是
<!-- Fixed navbar -->
<div class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container-fluid">
<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="#">Project name</a>
</div>
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="../navbar/">Default</a></li>
<li><a href="../navbar-static-top/">Static top</a></li>
<li class="active"><a href="./">Fixed top</a></li>
</ul>
</div><!--/.nav-collapse -->
</div>
</div>
它对我有用。
我真的不明白为什么你会有两个 .navbar-nav.navbar-right。 只需将导航包裹在 .navbar-right 中即可。
<div class="navbar-right">
<ul class="nav navbar-nav">...</ul>
<ul class="nav navbar-nav">...</ul>
</div>
我今天遇到了完全相同的问题! 根据 Bootstrap doc <ul class="nav navbar-nav navbar-right">
是正确的。
像你一样,我通过将 nav navbar-nav navbar-right margin-right 设置为 0px 解决了这个问题,而没有注意到不需要的效果。
请注意, .navbar-text .navbar-right:last-child 的 margin-right 值为 0px 而.navbar-nav .navbar-right:last-child margin-right 值为 -15px ......奇怪吗?
我的解决方案不是那么优雅,但做得很快,添加最后一个列表项;
<li><span> </span></li>
如果你有问题
边距右:-15px;
在 .navbar-right 然后添加你的 CSS 样式
.navbar-right {
margin-right: 0px;
}
如果这仍然不起作用,请在您的 webstie 运行时从所有历史记录中清除您的浏览器并再次调试它。 有用 :)
(在 asp.net mvc 中修复)我在 asp.net mvc c# 中遇到了同样的问题,我修复它的方法是转到 Contents/bootstrap.css 我找到了.navbar{}
类并将其添加为 5 的填充px,这对我有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.