Центр Навбар в Твиттере Bootstrap 2.0
Предположим, у нас есть следующая разметка для панели навигации с использованием Twitter Bootstrap 2.0.
<div class="navbar navbar-fixed-top">
<div class="navbar-inner pull-center">
<ul class="nav">
<li class="active"><a href="#">HOME</a></li>
<li><a href="#contact">CONTACT</a></li>
</ul>
</div>
</div>
Каков наилучший способ сосредоточиться .nav
внутри navbar-inner
?
Я только добавил свои собственные стили CSS:
@media (min-width: 980px) {
.pull-center {
text-align: center;
}
.pull-center > .nav {
float:none;
display:inline-block;
*display: inline; *zoom: 1;
height: 32px;
}
}
5 ответов
Переопределить ширину контейнера в панели навигации из auto
в 960px
,
.navbar-inner .container {width:960px;}
Чтобы выровнять его по центру с динамической шириной, я использовал следующее:
HTML:
<div class="navbar">
<div class="navbar-inner">
<ul class="nav">
....
</ul>
</div>
</div>
CSS:
.navbar .navbar-inner {
text-align: center;
}
.navbar .navbar-inner .nav {
float: none;
display:inline-block;
}
Не проверял, но, думаю, только display:inline-block;
может быть проблемой, которая поддерживается во всех браузерах, кроме IE7 и ниже.
<div class="navbar navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<ul class="nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="#">Contact</a></li>
</ul>
</div>
</div>
</div>
Просто использование класса контейнера согласно http://twitter.github.com/bootstrap/components.html центрирует мою навигацию; однако, это фиксированная ширина и форматирование выключено (высота навигационной панели увеличена, и вполне возможно, что я делаю что-то не так).
Было бы неплохо, чтобы навигация была центрирована в плавной, основанной на процентах ширине, с минимальной шириной, основанной на некотором минимальном поддерживаемом размере экрана устройства, и в настоящее время. (Я новичок в ответах на медийные запросы, и, возможно, это лучшая альтернатива процентным ставкам.)
Все еще исследуются минимальная ширина и nowrap, но другой альтернативой фиксированной ширине класса контейнера начальной загрузки является добавление дочернего элемента navbar-inner. Я хотел бы знать, есть ли встроенное решение начальной загрузки, такое как классы row-Fluid и SpanN, но я также не смог правильно отформатировать его в nav.
<div style="margin-left: 15%; margin-right: 15%;">
Я нашел это полезным и чистым:
<div class="navbar navbar-fixed-top">
<div class="container">
<ul class="nav">
<li class="active"><a href="#">HOME</a></li>
<li><a href="#contact">CONTACT</a></li>
</ul>
</div>
</div>
где, css это:
.container {left:auto;right:auto}
Это будет центрировать div на основе ширины вашей текущей панели навигации.
Отзывчивость управляется отдельно.