Documentação e exemplos para o poderoso e responsivo cabeçalho de navegação, o navbar. Inclui suporte para logo, navegação, plugin collapse e muito mais.
Como funciona
Aqui está oquê você precisa saber, antes de começar a usar o navbar:
Navbars precisam de um .navbar com .navbar-expand{-sm|-md|-lg|-xl} (para responsividade) e classes do esquema de cores;
Garanta acessibilidade com o elemento <nav> ou, se estiver usando um elemento mais genérico (como <div>), coloque role="navigation" em cada navbar para identificá-lo como tal, em tecnologias assistivas.
Continue lendo para ver um exemplo e lista de sub-componentes suportados.
Conteúdo suportado
Navbars vem com suporte integrado para um punhado de sub-componentes. Escolha entre os seguintes, sempre que precisar:
.navbar-brand para o nome de seu projeto, produto ou companhia;
.navbar-nav para obter uma leve navegação com suporte a dropdowns;
.navbar-toggler para usar com nosso plugin collapse e outros comportamentos;
.form-inline para qualquer campo de formulário e ações;
.navbar-text para adicionar texto centralizado verticalmente;
.collapse.navbar-collapse para agrupar e esconder conteúdos navbar, de acordo com o breakpoint do pai.
Aqui está um exemplo de todos os sub-componentes incluídos em um navbar light responsivo, o qual colapsa no breakpoint lg (large, em português: grande), automaticamente.
Este exemplo usa utilitários de cor (bg-light) e espaçamento (my-2, my-lg-0, mr-sm-0 e my-sm-0).
Marca
A classe .navbar-brand pode ser aplicada na maioria dos elementos, mas uma âncora funciona melhor, já que alguns elementos precisam de classes utilitárias ou estilos customizados.
Colocar imagens no .navbar-brand vai, provavelmente, sempre precisar de estilos customizados ou utilitários para dimensionamento, adequado. Aqui estão alguns exemplos para demonstrar.
Nav
Links de navegação navbar são feitos com nossas opções .nav, suas próprias classes modificadoras e precisam usar classes togglers, para estilização responsiva apropriada. Navegação em navbars também vão crescer para ocupar o maior espaço horizontal possível, mantendo os conteúdos do seu navbar alinhados.
Estados ativos (classe .active) para indicar a página atual podem ser aplicados, diretamente, no .nav-link ou seus pais imediatos .nav-item.
E porque nós usamos classes em nossos navs, você pode evitar a abordagem baseada em lista, se quiser.
Você também pode usar dropdowns em seu nav da navbar. Menus dropdown precisam de um elemento envolto para posicionamento, então, se assegure de usar elementos aninhados e separados para .nav-item e .nav-link, como mostrado abaixo.
Formulários
Coloque vários campos de formulário e componentes, dentro de um navbar com .form-inline.
Elementos filhos imediatos no .navbar usam layout flex e vão ter justify-content: between, por padrão. Use utilitários flex sempre que precisar, para ajustar este comportamento.
Grupos de input também funcionam:
Vários botões dentro dos formulários navbar também são suportados. Isso é um bom lembrete que utilitários de alinhamento vertical podem ser usados para linhar elementos de diferentes tamanhos.
Texto
Navbars podem conter pedaços de textos, com ajuda do .navbar-text. Esta classe configura o alinhamento vertical e espaçamento horizontal, em linhas de textos.
Misture e combine com outros componentes e utilitários, se precisar.
Esquema de cores
Tematizar o navbar nunca foi tão fácil, graças a combinação de classes temas e utilitários background-color. Escolha de .navbar-light (cores de fundo leves) até .navbar-dark (cores de fundo escuras). Depois, personalize o resto com utilitários .bg-*.
Containers
Apesar de não ser necessário, você pode envolver um .container em um navbar para centralizá-lo na página ou colocar um .container dentro para centralizar os conteúdos de um navbar top fixo ou estático.
Quando o container está dentro do seu navbar, seu padding horizontal é removido em breakpoints menores que sua classe .navbar-expand{-sm|-md|-lg|-xl} especificada. Isso garante que não dobraremos o padding, desnecessariamente, em viewports menores, quando seu navbar está expandido.
Posicionamento
Use nossos utilitários de posicionamento para posicionar navbars em locais não estáticos. Escolha entre fixo ao topo, fixo a parte inferior ou sticky top (rola com a página e fica fixo, quando ele alcança a topo). Navbars fixos usam position: fixed, significando que eles estão a parte do fluxo comum do DOM e podem precisar CSS customizado (ex: padding-top no <body>) para evitar sobreposição com outros elementos.
Navbars podem utilizar classes .navbar-toggler, .navbar-collapse e .navbar-expand{-sm|-md|-lg|-xl} para alterar quando o conteúdo colapsa, atrás do botão. Em combinação com outros utilitários, você pode escolher quando mostrar ou esconder certos elementos, facilmente.
Para navbars que não estão sempre colapsados, use a classe .navbar-expand no navbar. Para navbars que estão sempre colapsados, não coloque nenhuma classe .navbar-expand.
Toggler
Togglers navbar são alinhados a esquerda, por padrão, mas se eles seguem um elemento irmão como .navbar-brand, vão ser alinhados a direita, automaticamente. Revertendo sua marcação HTML vai reverter o posicionamento do toggler.
Abaixo, temos exemplos de diferentes estilos de togglers.
Sem .navbar-brand exibido, em breakpoints menores:
Com o nome da marca exibido na esquerda e o toggler na direita:
Com toggler na esquerda e nome da marca na direita:
Conteúdo externo
Algumas vezes você quer usar o plugin collapse para acionar conteúdo oculto, em algum lugar da página. Porque nosso plugin funciona com o pareamento de id e data-target, isso pode ser feito, facilmente!