Barras de navegação W3.CSS
Vertical:
Horizontal:
Classes da barra de navegação W3.CSS
W3.CSS fornece as seguintes classes para barras de navegação:
Classe | Define |
---|---|
w3-bar | Recipiente horizontal para elementos HTML |
w3-bar-block | Recipiente vertical para elementos HTML |
w3-bar-item | Elementos da barra de contêiner |
barra lateral w3 | Barra lateral vertical para elementos HTML |
w3-móvel | Torna qualquer elemento de barra responsivo para dispositivos móveis |
w3-dropdown-hover | Elemento suspenso flutuante |
w3-dropdown-clique | Elemento suspenso clicável (em vez de passar o mouse) |
Navegação básica
A classe w3-bar é um contêiner para exibir elementos HTML horizontalmente.
A classe w3-bar-item define os elementos do contêiner.
É uma ferramenta perfeita para criar barras de navegação:
Exemplo
<div class="w3-bar w3-black">
<a href="#" class="w3-bar-item w3-button">Home</a>
<a href="#" class="w3-bar-item w3-button">Link 1</a>
<a href="#" class="w3-bar-item w3-button">Link 2</a>
<a href="#" class="w3-bar-item w3-button">Link 3</a>
</div>
Navegação responsiva
A classe w3-mobile torna qualquer elemento de barra responsivo (horizontal em telas grandes e vertical em telas pequenas).
Telas médias e grandes:
Telas pequenas:
Exemplo
<div class="w3-bar w3-black">
<a href="#" class="w3-bar-item w3-button w3-mobile">Home</a>
<a href="#" class="w3-bar-item w3-button w3-mobile">Link 1</a>
<a href="#" class="w3-bar-item w3-button w3-mobile">Link 2</a>
<a href="#" class="w3-bar-item w3-button w3-mobile">Link 3</a>
</div>
Barras de navegação coloridas
Use uma classe w3-color para adicionar uma cor à barra de navegação:
Exemplo
<div class="w3-bar w3-light-grey">
<div
class="w3-bar w3-green">
<div
class="w3-bar w3-blue">
Barras de navegação com bordas
Use uma classe w3-border ou w3-card para adicionar bordas ao redor da barra de navegação ou para exibi-la como um cartão:
Exemplo
<div class="w3-bar w3-border w3-light-grey">
<div
class="w3-bar w3-border w3-card-4">
Link Ativo/Atual
Adicione uma classe w3-color a um link para destacá-lo:
Exemplo
<div class="w3-bar w3-border w3-light-grey">
<a href="#" class="w3-bar-item w3-button w3-green">Home</a>
<a href="#" class="w3-bar-item w3-button">Link 1</a>
<a href="#" class="w3-bar-item w3-button">Link 2</a>
<a href="#" class="w3-bar-item w3-button">Link 3</a>
</div>
Links flutuantes
Quando você passa o mouse sobre um botão, a cor de fundo muda para cinza.
Se você quiser uma cor de fundo diferente ao passar o mouse, use qualquer uma das classes w3-hover- color :
Exemplo
<div class="w3-bar w3-border w3-light-grey">
<a href="#" class="w3-bar-item w3-button">Home</a>
<a href="#" class="w3-bar-item w3-button w3-hover-green">Link 1</a>
<a href="#" class="w3-bar-item w3-button w3-hover-blue">Link 2</a>
<a href="#" class="w3-bar-item w3-button w3-hover-teal">Link 3</a>
</div>
Se você quiser alterar a cor do texto, desative o efeito de foco padrão com a classe w3-hover-none e adicione uma classe w3-hover-text .
Exemplo
<div class="w3-bar w3-border w3-black">
<a href="#"
class="w3-bar-item w3-button">Default</a>
<a href="#"
class="w3-bar-item w3-button w3-hover-none w3-text-grey
w3-hover-text-white">Link 1</a>
<a href="#" class="w3-bar-item
w3-button w3-hover-none w3-text-grey w3-hover-text-white">Link 2</a>
<a href="#" class="w3-bar-item w3-button w3-hover-none w3-text-grey
w3-hover-text-white">Link 3</a>
</div>
Passe algum tempo para brincar com diferentes efeitos de foco:
Exemplo
<div class="w3-bar">
<a href="#" class="w3-bar-item w3-button w3-hover-none w3-border-white w3-bottombar w3-hover-border-black">Link 1</a>
<a href="#" class="w3-bar-item w3-button w3-hover-none w3-border-white w3-bottombar w3-hover-border-black">Link 2</a>
<a href="#"
class="w3-bar-item w3-button w3-hover-none w3-border-white w3-bottombar w3-hover-border-black">Link 3</a>
</div>
Links alinhados à direita
Use a classe w3-right em um item de lista para alinhar à direita um link específico:
Exemplo
<div class="w3-bar w3-border w3-light-grey">
<a href="#" class="w3-bar-item w3-button">Home</a>
<a href="#" class="w3-bar-item w3-button">Link 1</a>
<a href="#" class="w3-bar-item w3-button">Link 2</a>
<a href="#" class="w3-bar-item w3-button w3-green w3-right">Link 3</a>
</div>
Tamanho da barra de navegação
Use uma classe w3-size para alterar o tamanho da fonte dos links dentro da barra de navegação:
Exemplo
<div class="w3-bar w3-green w3-large">
<div class="w3-bar w3-green w3-xlarge">
Use uma classe de preenchimento w3 para alterar o preenchimento de cada link dentro da barra de navegação:
Exemplo
<div class="w3-bar w3-border w3-green">
<a href="#" class="w3-bar-item w3-button w3-padding-16">Home</a>
<a href="#" class="w3-bar-item w3-button w3-padding-16">Link 1</a>
<a href="#" class="w3-bar-item w3-button w3-padding-16">Link 2</a>
<a href="#" class="w3-bar-item w3-button w3-padding-16">Link 3</a>
</div>
Nota: Você também pode adicionar preenchimento à barra de navegação, em vez de cada botão. No entanto, se você fizer isso, observe que os links não recebem preenchimento completo ao passar o mouse:
Exemplo
<div class="w3-bar w3-green w3-padding-16"></div>
Personalize a largura dos links com a propriedade de largura do CSS
( Nota : Use w3-mobile para transformar os links em 100% de largura em telas pequenas):
Exemplo
<div class="w3-bar w3-dark-grey">
<a href="#"
class="w3-bar-item w3-button w3-mobile w3-green" style="width:33%">Home</a>
<a href="#" class="w3-bar-item w3-button w3-mobile"
style="width:33%">Link 1</a>
<a href="#" class="w3-bar-item
w3-button w3-mobile" style="width:33%">Link 2</a>
</div>
Barra de navegação com ícones
Exemplo
<div class="w3-bar w3-light-grey w3-border">
<a href="#"
class="w3-bar-item w3-button w3-green"><i class="fa fa-home"></i></a>
<a href="#" class="w3-bar-item w3-button"><i class="fa fa-search"></i></a>
<a href="#" class="w3-bar-item w3-button"><i class="fa fa-envelope"></i></a>
<a href="#" class="w3-bar-item w3-button"><i class="fa fa-globe"></i></a>
<a href="#" class="w3-bar-item w3-button"><i class="fa fa-sign-in"></i></a>
</div>
As classes "fa fa" no exemplo acima exibem ícones "Font Awesome".
Aprenda mais sobre como exibir ícones no capítulo Ícones W3.CSS .
Texto da barra de navegação
Se você quiser texto em vez de botões dentro da barra de navegação, use a classe w3-bar-item para obter o mesmo preenchimento dos botões.
Exemplo
<div class="w3-bar w3-black">
<a href="#" class="w3-bar-item
w3-button">Home</a>
<a href="#" class="w3-bar-item w3-button">Link
1</a>
<a href="#" class="w3-bar-item w3-button">Link 2</a>
<a href="#" class="w3-bar-item w3-button">Link 3</a>
<span
class="w3-bar-item">Text</span>
</div>
Navbar com entradas e botões
Exemplo
<div class="w3-bar w3-light-grey">
<a href="#" class="w3-bar-item
w3-button">Home</a>
<a href="#" class="w3-bar-item w3-button">Link
1</a>
<a href="#" class="w3-bar-item w3-button">Link 2</a>
<input type="text" class="w3-bar-item w3-input" placeholder="Search..">
<a href="#" class="w3-bar-item w3-button w3-green">Go</a>
</div>
Barra de navegação com menu suspenso
Mova o mouse sobre o link "Suspenso":
Exemplo
<div class="w3-bar w3-light-grey">
<a href="#"
class="w3-bar-item w3-button">Home</a>
<a href="#" class="w3-bar-item w3-button">Link 1</a>
<div class="w3-dropdown-hover">
<button class="w3-button">Dropdown</button>
<div
class="w3-dropdown-content w3-bar-block w3-card-4">
<a href="#"
class="w3-bar-item w3-button">Link 1</a>
<a href="#"
class="w3-bar-item w3-button">Link
2</a>
<a href="#" class="w3-bar-item
w3-button">Link 3</a>
</div>
</div>
</div>
Lista suspensa clicável
Use w3-dropdown-click se preferir clicar no link suspenso em vez de passar o mouse:
Exemplo
<div class="w3-dropdown-click">
<button class="w3-button" onclick="myFunction()">
Dropdown
<i class="fa fa-caret-down"></i>
</button>
<div id="demo"
class="w3-dropdown-content w3-bar-block w3-card-4">
<a href="#"
class="w3-bar-item w3-button">Link 1</a>
<a href="#"
class="w3-bar-item w3-button">Link 2</a>
<a href="#" class="w3-bar-item w3-button">Link 3</a>
</div>
</div>
Menu suspenso horizontal
Remova a classe w3-bar-block do contêiner suspenso se desejar que os links suspensos sejam exibidos horizontalmente em vez de verticalmente:
Exemplo
<div class="w3-bar w3-light-grey">
<a href="#"
class="w3-bar-item w3-button">Home</a>
<a href="#" class="w3-bar-item w3-button">Link 1</a>
<div class="w3-dropdown-hover">
<button class="w3-button">Dropdown</button>
<div
class="w3-dropdown-content w3-card-4">
<a href="#"
class="w3-bar-item w3-button">Link 1</a>
<a href="#"
class="w3-bar-item w3-button">Link
2</a>
<a href="#" class="w3-bar-item
w3-button">Link 3</a>
</div>
</div>
</div>
Barra de navegação responsiva com menu suspenso responsivo
Use a classe w3-mobile em todos os links, incluindo o contêiner suspenso, para criar uma barra de navegação responsiva com links suspensos responsivos.
Redimensione a janela do navegador para ver o efeito:
Exemplo
<div class="w3-bar w3-black">
<a href="#" class="w3-bar-item
w3-button w3-mobile w3-green">Home</a>
<a href="#"
class="w3-bar-item w3-button w3-mobile">Link 1</a>
<a href="#"
class="w3-bar-item w3-button w3-mobile">Link 2</a>
<div
class="w3-dropdown-hover w3-mobile">
<button
class="w3-button">Dropdown <i class="fa fa-caret-down"></i></button>
<div class="w3-dropdown-content w3-bar-block w3-dark-grey">
<a href="#" class="w3-bar-item w3-button w3-mobile">Link 1</a>
<a href="#" class="w3-bar-item w3-button w3-mobile">Link 2</a>
<a href="#" class="w3-bar-item w3-button w3-mobile">Link 3</a>
</div>
</div>
</div>
Fixed Navigation Bar
To force the navigation bar to stay at the top or at the bottom of the page, even when the user scrolls the page, wrap a <div> element around the bar and add the w3-top or w3-bottom class:
Fixed Top
<div class="w3-top">
<div class="w3-bar">
...
...
</div>
</div>
Fixed Bottom
<div class="w3-bottom">
<div class="w3-bar">
...
...
</div>
</div>
Vertical Navigation Bar
The w3-bar-block class is a container for displaying HTML elements vertically.
Example
<div class="w3-bar-block w3-black">
<a href="#" class="w3-bar-item w3-button">Home</a>
<a href="#" class="w3-bar-item w3-button">Link
1</a>
<a href="#" class="w3-bar-item w3-button">Link 2</a>
<a href="#" class="w3-bar-item w3-button">Link 3</a>
</div>
Collapsing the Navigation Bar
When the navigation bar takes up too much space on a small screen, and you do not want to display it vertically by default, you can use hide and show classes on specific links in the navigation bar.
In the example below, the navigation bar is replaced with a button (☰) in the top right corner when shown on tablets and mobile devices. When the button is clicked, the links in the navigation bar will vertically stack:
Example
Side Navigation
The w3-sidebar class creates a side navigation:
Go to the next chapter to learn more about the side navigation.