Abas de navegação W3.CSS


Londres

Londres é a capital da Inglaterra.

É a cidade mais populosa do Reino Unido, com uma área metropolitana de mais de 9 milhões de habitantes.


Navegação com guias

A navegação com guias é uma maneira de navegar em um site.

Normalmente, a navegação com guias usa botões de navegação (guias) organizados junto com a guia selecionada realçada.

Este exemplo usa elementos com o mesmo nome de classe ("city" em nosso exemplo) e altera o estilo entre display:none e display:block para ocultar e exibir conteúdo diferente:

Exemplo

<div id="London" class="city">
  <h2>London</h2>
  <p>London is the capital of England.</p>
</div>

<div id="Paris" class="city" style="display:none">
  <h2>Paris</h2>
  <p>Paris is the capital of France.</p>
</div>

<div id="Tokyo" class="city" style="display:none">
  <h2>Tokyo</h2>
  <p>Tokyo is the capital of Japan.</p>
</div>

E alguns botões clicáveis ​​para abrir o conteúdo com abas:

Exemplo

<div class="w3-bar w3-black">
  <button class="w3-bar-item w3-button" onclick="openCity('London')">London</button>
  <button class="w3-bar-item w3-button" onclick="openCity('Paris')">Paris</button>
  <button class="w3-bar-item w3-button" onclick="openCity('Tokyo')">Tokyo</button>
</div>

E um JavaScript para fazer o trabalho:

Exemplo

function openCity(cityName) {
  var i;
  var x = document.getElementsByClassName("city");
  for (i = 0; i < x.length; i++) {
    x[i].style.display = "none";
  }
  document.getElementById(cityName).style.display = "block";
}

JavaScript explicado

A função openCity() é chamada quando o usuário clica em um dos botões do menu.

A função oculta todos os elementos com o nome de classe "city" ( display="none" ) e exibe o elemento com o nome de cidade fornecido ( display="block" );



Abas que podem ser fechadas

×

Londres

Londres é a capital da Inglaterra.

Para fechar uma guia, adicione onclick="this.parentElement.style.display='none'" a um elemento dentro do contêiner da guia:

Exemplo

<div id="London" class="w3-display-container">
  <span onclick="this.parentElement.style.display='none'"
  class="w3-button w3-display-topright">X</span>
  <h2>London</h2>
  <p>London is the capital city of England.</p>
</div>

Guia Ativo/Atual

Para destacar a guia/página atual em que o usuário está, use JavaScript e adicione uma classe de cor ao link ativo. No exemplo abaixo, adicionamos uma classe "tablink" a cada link. Dessa forma, é fácil obter todos os links associados às guias e dar ao link da guia atual uma classe "w3-red", para destacá-lo:

Exemplo

function openCity(evt, cityName) {
  var i, x, tablinks;
  x = document.getElementsByClassName("city");
  for (i = 0; i < x.length; i++) {
    x[i].style.display = "none";
  }
  tablinks = document.getElementsByClassName("tablink");
  for (i = 0; i < x.length; i++) {
    tablinks[i].className = tablinks[i].className.replace(" w3-red", "");
  }
  document.getElementById(cityName).style.display = "block";
  evt.currentTarget.className += " w3-red";
}

Abas Verticais

Exemplo

<nav class="w3-sidebar w3-bar-block w3-light-grey" style="width:130px">
  <button class="w3-bar-item w3-button" onclick="openCity(event, 'London')">London</button>
  <button class="w3-bar-item w3-button" onclick="openCity(event, 'Paris')">Paris</button>
  <button class="w3-bar-item w3-button" onclick="openCity(event, 'Tokyo')">Tokyo</button>
</nav>

Conteúdo da guia animada

Use qualquer uma das classes w3-animate- para desvanecer, ampliar ou deslizar no conteúdo da guia:

Exemplo

<div id="London" class="w3-container city w3-animate-left">
  <p>London is the capital city of England.</p>
</div>

Galeria de imagens com guias

Clique em uma imagem:


Natureza ×
Natureza

Exemplo

<a href="#" class="w3-hover-opacity" onclick="openImg('Nature');">
  <img src="img_nature.jpg" alt="Nature">
</a>

<div id="Nature" class="picture w3-display-container">
  <img src="img_nature_wide.jpg" alt="Nature" style="width:100%">
  <span onclick="this.parentElement.style.display='none'" class="w3-display-topright">&times;</span>
  <div class="w3-display-bottomleft w3-container">Nature</div>
</div>

Guias em uma grade

Usando guias em um layout de terceira coluna. Observe que adicionamos uma borda inferior à guia ativa, em vez de uma cor de fundo:

Exemplo