Правильный край навигационной панели Bootstrap 3 не должен быть -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 из панели навигации, он работает так, как я хочу.
Любые подсказки?
Ответы
Ответ 1
Используйте.контейнер-жидкость с 3.1.1.
Неправильная структура..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>
Ответ 2
В итоге я получил следующее:
.navbar-nav.navbar-right:last-child {
margin-right: 0;
}
Но может быть, есть другое решение?
Ответ 3
Он сломан и не будет исправлен в 3.x
. Взломайте его.
.navbar-right {
margin-right: 0px;
}
Ответ 4
Решение этого может быть
<!-- 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>
Это сработало для меня.
Ответ 5
Я действительно не понимаю, почему у вас будет два .navbar-nav.navbar-right. Просто оберните навигаторы в .navbar-right вместо этого.
<div class="navbar-right">
<ul class="nav navbar-nav">...</ul>
<ul class="nav navbar-nav">...</ul>
</div>
Ответ 6
У меня точно такая же проблема сегодня!
В соответствии с Bootstrap doc <ul class="nav navbar-nav navbar-right">
является правильным.
Как и вы, я решил проблему, установив навигационный navbar-nav navbar-right margin-right на 0px, не заметив нежелательных эффектов.
Обратите внимание, что значение margin-right .navbar-text.navbar-right: last-child равно 0px, а .navbar-nav.navbar-right: last -child margin-right значение -15px... Bizarre?
https://github.com/twbs/bootstrap/issues/13325
Ответ 7
Мое не очень элегантное решение, но очень быстро выполняет эту задачу, добавляет последний элемент списка;
<li><span> </span></li>
Ответ 8
Если у вас есть проблемы с
margin-right: -15px;
в .navbar-right, а затем просто добавьте стили css
.navbar-right {
margin-right: 0px;
}
и если это все еще не очистит ваш браузер от всей истории, когда ваш веб-сайт запущен и снова отлаживает его. Он работает:)