Atualização de 2019
Bootstrap 4
Agora que o Bootstrap 4 possui flexbox, o alinhamento da Navbar é muito mais fácil. Aqui estão exemplos atualizados de esquerda , direita e centro na barra de navegação do Bootstrap 4 e muitos outros cenários de alinhamento demonstrados aqui .
As classes flexbox , margens automáticas e utilitário de pedidos podem ser usadas para alinhar o conteúdo da Navbar, conforme necessário. Há muitas coisas a considerar, incluindo a ordem e o alinhamento dos itens da Navbar (marca, links, alternador) nas telas grandes e nas visualizações móvel / recolhida. Não use as classes de grade (linha, coluna) para a barra de navegação .
Aqui estão vários exemplos ...
Links esquerdo, central (marca) e direito:
<nav class="navbar navbar-expand-md navbar-dark bg-dark">
<div class="navbar-collapse collapse w-100 order-1 order-md-0 dual-collapse2">
<ul class="navbar-nav mr-auto">
<li class="nav-item active">
<a class="nav-link" href="#">Left</a>
</li>
<li class="nav-item">
<a class="nav-link" href="//codeply.com">Codeply</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
</ul>
</div>
<div class="mx-auto order-0">
<a class="navbar-brand mx-auto" href="#">Navbar 2</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target=".dual-collapse2">
<span class="navbar-toggler-icon"></span>
</button>
</div>
<div class="navbar-collapse collapse w-100 order-3 dual-collapse2">
<ul class="navbar-nav ml-auto">
<li class="nav-item">
<a class="nav-link" href="#">Right</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
</ul>
</div>
</nav>
http://www.codeply.com/go/qhaBrcWp3v
Outra opção BS4 Navbar com links centrais e sobreposição da imagem do logotipo :
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<div class="navbar-collapse collapse w-100 dual-collapse2 order-1 order-md-0">
<ul class="navbar-nav ml-auto text-center">
<li class="nav-item active">
<a class="nav-link" href="#">Link</a>
</li>
</ul>
</div>
<div class="mx-auto my-2 order-0 order-md-1 position-relative">
<a class="mx-auto" href="#">
<img src="//placehold.it/120/ccff00" class="rounded-circle">
</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target=".dual-collapse2">
<span class="navbar-toggler-icon"></span>
</button>
</div>
<div class="navbar-collapse collapse w-100 dual-collapse2 order-2 order-md-2">
<ul class="navbar-nav mr-auto text-center">
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
</ul>
</div>
</nav>
Ou , esses outros cenários de alinhamento do Bootstrap 4:
marca esquerda, links do centro morto (vazio à direita)
marca e centro de links, ícones esquerdo e direito
Mais exemplos do Bootstrap 4 :
alternador deixado no celular, marca no centro da marca direita
e links no celular
direito alinhar links no computador, links centrais no celular
esquerdo links & alternador, marca central, pesquisa direita
Veja também: O Bootstrap 4 alinha os itens da barra de navegação à direita
barra de navegação do Bootstrap 4 alinha à direita com o botão que não diminui no celular
Centralize um elemento no Bootstrap 4 Navbar
Bootstrap 3
Opção 1 - Brand center, com links de navegação esquerdo / direito:
<nav class="navbar navbar-default" role="navigation">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<a class="navbar-brand" href="#">Brand</a>
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav navbar-left">
<li><a href="#">Left</a></li>
<li><a href="#about">Left</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li><a href="#about">Right</a></li>
<li><a href="#contact">Right</a></li>
</ul>
</div>
</nav>
.navbar-brand
{
position: absolute;
width: 100%;
left: 0;
text-align: center;
margin:0 auto;
}
.navbar-toggle {
z-index:3;
}
http://bootply.com/98314 (3.x)
Opção 2 - Links de navegação esquerdo, central e direito:
<nav class="navbar navbar-default" role="navigation">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li><a href="#">Left</a></li>
</ul>
<ul class="nav navbar-nav navbar-center">
<li><a href="#">Center</a></li>
<li><a href="#">Center</a></li>
<li><a href="#">Center</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li><a href="#">Right</a></li>
</ul>
</div>
</nav>
@media (min-width: 768px) {
.navbar-nav.navbar-center {
position: absolute;
left: 50%;
transform: translatex(-50%);
}
}
http://www.bootply.com/SGYC6BWeBK
Opção 3 - Centralize a marca e os links
.navbar .navbar-header,
.navbar-collapse {
float:none;
display:inline-block;
vertical-align: top;
}
@media (max-width: 768px) {
.navbar-collapse {
display: block;
}
}
http://www.codeply.com/go/1lrdvNH9GI
Mais exemplos:
Marca esquerda, links centrais
Ligador esquerdo, marca central
Para 3.x, veja também justificado para a navegação: Bootstrap center navbar
Centralizar a barra de navegação no Bootstrap O
Bootstrap 4 alinha os itens da barra de navegação à direita
.abs
classe faz com que onavbar-brand
elemento para cobrir os botões à esquerda e à direita, tornando-os unclickableBootstrap 4
Temos várias maneiras de alinhar os itens navBars.
Para alinhamento à esquerda
Para alinhar à direita
Para alinhamento centralizado
fonte
Eu precisava de algo semelhante (itens alinhados à esquerda, central e direita), mas com a capacidade de marcar itens centralizados como ativos. O que funcionou para mim foi:
http://www.bootply.com/CSI2KcCoEM
CSS:
fonte
Bootstrap 4 (a partir do alpha 6)
Para Alinhar à direita, use
justify-content-end
ocollapse
div:Exemplo completo aqui: https://jsbin.com/kemawa/edit?output
fonte
Bato na minha cabeça, apenas reli minha resposta e percebi que o OP estava pedindo dois logotipos, um à esquerda e outro à direita, com um menu central, e não o contrário.
Isso pode ser realizado estritamente no HTML usando "navbar-right" e "navbar-left" do Bootstrap para os logotipos e, em seguida, "justificado por nav" em vez de "navbar-nav" para o UL. Não é necessário nenhum CSS adicional (a menos que você queira colocar a barra de navegação recolhida no centro na janela de exibição xs, será necessário substituir um pouco, mas isso deixará para você).
Bootply: http://www.bootply.com/W6uB8YfKxm
Para quem chegou aqui tentando centralizar a "marca" aqui está minha antiga resposta:
Eu sei que este tópico é um pouco antigo, mas apenas para postar minhas descobertas ao trabalhar nisso. Decidi basear minha solução na resposta de skelly desde as pausas de tomaszbak no collaspe. Primeiro, criei o "navbar-center" e desliguei o float para a navbar normal no meu CSS:
No entanto, o problema com a resposta de skelly é se você tem um nome de marca muito longo (ou deseja usar uma imagem para sua marca), depois de chegar à janela de exibição sm, pode haver sobreposição devido à posição absoluta e como os comentaristas têm disse, assim que você chega à janela de exibição xs, o interruptor de alavanca quebra (a menos que você use o posicionamento Z, mas eu realmente não queria ter que me preocupar com isso).
Então, o que fiz foi utilizar os utilitários responsivos de autoinicialização para criar várias versões do bloco da marca:
Portanto, agora as viewports lg e md têm a marca centralizada com links para a esquerda e para a direita. Quando você chega à viewport sm, seus links caem para a próxima linha para que você não se sobreponha à sua marca e, finalmente, aos xs viewport o collaspe entra em ação e você pode usar a alternância. Você pode dar um passo adiante e modificar as consultas de mídia para a barra de navegação direita e esquerda quando usada com a marca navbar, para que, na janela de visualização sm, os links estejam todos centralizados, mas não tenham tempo para examiná-lo.
Você pode verificar meu antigo bootply aqui: www.bootply.com/n3PXXropP3
Eu acho que ter três marcas pode ser tão problemático quanto o "z", mas eu sinto que, no mundo do design responsivo, essa solução se encaixa melhor no meu estilo.
fonte
Achei que a seguinte era uma solução melhor, dependendo do conteúdo dos itens esquerdo, central e direito. Uma largura de 100% sem margem causava sobreposição de divs e impedia que as tags âncora funcionassem corretamente - isto é, sem o uso desordenado dos índices z.
fonte
Esta é uma pergunta datada, mas encontrei uma solução alternativa para compartilhar diretamente na página do github de inicialização. A documentação não foi atualizada e há outras perguntas sobre o SO que solicitam a mesma solução, embora em questões um pouco diferentes. Esta solução não é específica para o seu caso, mas como você pode ver, a solução é a
<div class="container">
seguinte,<nav class="navbar navbar-default navbar-fixed-top">
mas também pode ser substituída por<div class="container-fluid"
conforme necessário.A solução foi encontrada em um violino nesta página: https://github.com/twbs/bootstrap/issues/18362
e está listado como não será corrigido na V3.
fonte
Coloque os campos que você deseja centralizar, direita ou esquerda, de acordo com a divisão acima.
fonte
Você define a margem esquerda para auto -> ml-auto na seção que deseja mover para a direita.
fonte
A solução mais simples:
Apenas divida as
navbar
colunas em: por exemplo, se você tiver 24 colunas no total, 12 ficarão vazias e 12 restringirão a barra de navegação:fonte