Центрирование фиксированной верхней панели навигации для больших экранов в Twitter Bootstrap 3

У меня есть фиксированный верхний navbar в Twitter Bootstrap 3.
Все работает хорошо до 1350 пикселей. После 1350px становится пробел между содержимым navbar. Итак, я хочу центрировать мой navbar.

Я проверил ответы на это, это и это. Никто из них не работал для меня.

Это моя скрипка: http://jsfiddle.net/mcqHE/56/
В настоящее время я использую Navbar 1,
Чтобы попробовать центрирование навигационной панели, я добавил Navbar 2 на скрипку.

Проверьте скрипку шириной 1500 пикселей.
* Navbar 1 - одна линия, не центрирована и имеет пробел.
* Навбар 2 по центру, без зазора, но это две линии.
Кажется, причина в этом правиле: @media (min-width: 1200px) .container { max-width: 1170px; }

Итак, как я могу сделать навигацию по центру и одну линию, если ширина больше 1350 пикселей?

4 ответа

Это ответ для вашей проблемы:-)

Вам необходимо добавить следующие строки в css:

@media screen and (min-width:  1350px) {
   .navbar { text-align: center; }
   .navbar-header { display: inline-block; float: none !important; }
   .navbar-collapse.collapse { display: inline-block !important; }
}

Вот решение на: http://jsfiddle.net/myN2s/.

Дайте мне знать, если вы решите это.

Каждый раз, когда вы хотите центрировать элементы, вы должны добавить text-align:center к родительскому элементу, и display: inline-block к элементам, которые вы хотите центрировать по горизонтали. Ничто из этого не может быть спущено на воду (это очень важно).

Для navbar 1 добавьте следующий CSS к этому div div class = "navbar-collapse navbar-part2 collapse

max-width: 1350px;
margin-left: auto;
margin-right: auto;

max width гарантирует, что часть навигации не будет шире, чем 1350px margin-left:auto и margin-right:auto будет центрировать навигацию.

Я думаю, это то, что вы после? если не извините!

Это исправление затронет все стили на вашей странице. Но я думаю, это то, что вы просите, не было достаточно места, чтобы вставить в одну строку. http://jsfiddle.net/mcqHE/58/

* {
    font-size:10px;
}

Хотя нижеследующий ответ охватывает большую часть этого, я заметил, что меню все еще не в одну строку, вот следующее изменение, которое я сделал:

1) Да, именно ширина создает два зазора, но главный виновник .container, Так что удалите <div> с классом .container

2) Добавьте этот CSS, чтобы держать ваши пункты меню в центре:

.navbar-inner { text-align: center; }

3) Наконец это:

.collapse.navbar-collapse.in{ display: inline-block !important; }

Связывает два <ul> элементы вместе.

Дополнительно:

Если вы хотите, чтобы заголовок "Навбар" был также центрирован, вы можете сделать:

.navbar-header { float: none; }

Вот JSFiddle.

И это влияет на разрешение> 1350 пикселей.

Другие вопросы по тегам