Центрировать навигацию в Twitter Bootstrap
Я хочу иметь возможность центрировать навигационную мертвую середину страницы, чтобы она оставалась центрированной в разных разрешениях. Я не хочу использовать смещения, чтобы сдвинуть его или отступить влево, так как это просто испортило бы его в браузерах различной ширины. Это типичный бар, с которым я балуюсь, но ul всегда выровнен по левому краю.
<div class="navbar navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
<div class="nav-collapse">
<ul class="nav">
<li class="active"><a href="#">Menu</a></li>
<li><a href="#">On Tap</a></li>
<li><a href="#">Shows</a></li>
<li><a href="#">Surfwear</a></li>
<li><a href="#" >Contact</a></li>
</ul>
</div><!--/.nav-collapse -->
</div><!-- container -->
</div><!-- navbar-inner -->
</div><!-- navbar navbar-fixed-top -->
8 ответов
Возможная копия Modify Twitter начальной загрузки Navbar. Я думаю, это то, что вы ищете (скопировано):
.navbar .nav,
.navbar .nav > li {
float:none;
display:inline-block;
*display:inline; /* ie7 fix */
*zoom:1; /* hasLayout ie7 trigger */
vertical-align: top;
}
.navbar-inner {
text-align:center;
}
Как указано в связанном ответе, вы должны создать новый класс с этими свойствами и добавить его в div nav.
Для тех, кто нуждается в этом для Bootstrap 3, теперь это намного проще.
Новый nav-justified
класс может быть использован для центрирования всех ссылок на панели навигации.
http://www.bootply.com/g3g125MLGr
<div class="navbar">
<ul class="nav nav-justified" id="myNav">
<li><a href="#">Home</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
</ul>
</div>
Или с небольшим CSS вы можете центрировать только марку / логотип, и разделять левые / правые ссылки отдельно.
Вы можете сделать .navbar
фиксированная ширина, затем установите левое и правое поле auto
,
.navbar{
width: 80%;
margin: 0 auto;
}
.navbar-right {
margin-left:auto;
margin-right:auto;
max-width :40%;
float:none !important;
}
просто скопируйте этот код и измените max-width
как вам нравится
Для Bootstrap v4 проверьте это:
https://v4-alpha.getbootstrap.com/components/pagination/
только добавить класс в ul.pagination:
<nav">
<ul class="pagination justify-content-center">
<li class="page-item disabled">
<a class="page-link" href="#" tabindex="-1">Previous</a>
</li>
<li class="page-item"><a class="page-link" href="#">1</a></li>
<li class="page-item"><a class="page-link" href="#">2</a></li>
<li class="page-item"><a class="page-link" href="#">3</a></li>
<li class="page-item">
<a class="page-link" href="#">Next</a>
</li>
</ul>
</nav>
http://www.bootply.com/3iSOTAyumP в этом примере кнопка "Свернуть" не была кликабельной, потому что впереди был бренд.navbar.
http://www.bootply.com/RfnEgu45qR есть обновленная версия, где кнопки свертывания фактически нажимаются.
Код использовал базовую навигационную загрузку
<!--MENU CENTER`enter code here` RESPONSIVE -->
<div class="container-fluid">
<div class="container logo"><h1>LOGO</h1></div>
<nav class="navbar navbar-default menu">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#defaultNavbar2"><span class="sr-only">Toggle navigation</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span></button>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="defaultNavbar2">
<ul class="nav nav-justified" >
<li><a href="#">Home</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
</ul>
</div>
<!-- /.navbar-collapse -->
</div>
<!-- /.container-fluid -->
</nav>
</div>
<!-- END MENU-->
Я предпочитаю это:
<nav class="navbar">
<div class="hidden-xs hidden-sm" style="position: absolute;left: 50%;margin-left:-56px;width:112px" id="centered-div">
<!-- this element is on the center of the nav, visible only on -md and -lg -->
<a></a>
</div>
<div class="container-fluid">
<!-- ...things with your navbar... -->
<div class="visible-xs visible-sm">
<!-- this element will be hidden on -md and -lg -->
</div>
<!-- ...things with your navbar... -->
</div>
</nav>
Элемент идеально отцентрирован и будет скрыт на экранах некоторых размеров (например, для -xs и -sm для меня не осталось места). Я понял идею из фактической навигационной панели Twitter