Tribo do C.I.

Só mais um blog de informática (só que não)

Criando um Menu Dropdown com CSS

janeiro 10th, 2013

Siga os passos abaixo para criar seu próprio menu dropdown para seu site utilizando apenas CSS.

Primeiro, defina seus links no HTML, para nosso exemplo, usaremos a tag nav do HTML5

<nav>
	<ul>
		<li><a href="#">Inicio</a></li>
		<li><a href="#">Tutoriais</a>
			<ul>
				<li><a href="#">Php</a></li>
				<li><a href="#">Java</a></li>
				<li><a href="#">SQL</a>
                                     <ul>
                                          <li><a href="#">PostgreSQL</a></li>
                                          <li><a href="#">MySql</a></li>
                                     </ul>
                                </li>
			</ul>
		</li>
		<li><a href="#">Redes Sociais</a>
			<ul>
				<li><a href="#">Facebook</a></li>
				<li><a href="#">Twitter</a></li>
			</ul>
		</li>
		<li><a href="#">Sobre</a></li>
	</ul>
</nav>

Então veja que o mapa do menu ficou da seguinte maneira:

  • Inicio
  • Tutoriais
    • Php
    • Java
    • SQL
      • PostgreSQL
      • MySql
  • Redes Sociais
    • Facebook
    • Twitter
  • Sobre

Agora, visualizando como ficou a hierarquia de links, passamos para o CSS:

nav ul ul {
	display: none;
}

nav ul li:hover > ul {
	display: block;
}

Iniciando com a primeira funcinalidade de um menu dropdown, nós escondemos todas as sublistas (declarações ul dentro do primeiro ul) com display:none. Depois,  adicionamos para aparecer as sublistas (ul) de cada elemento da lista (li) quando o mouse passar sobre (hover). O símbolo ‘>’ afirma que somente as sublistas filhas do elemento em questão (o qual você está com o mouse em cima) aparecerá.

nav ul {
	list-style:none;
	padding: 0 20px;
	position:relative;
	display:inline-table;
}
nav ul:after {
	content: ""; clear:both; display:block;
}

O position:relative nos permitirá posicionar sub menus de acordo com a barra de navegação principal.  O display:inline-table condensará a largura do menu. Agora tratando primeiro e segundo nível

 

nav ul li {
	float:left;
}
nav ul li a{
	float:left;
	padding:5px 20px;
}
nav ul ul li {
	float:none;
}

Agora basta tratar o terceiro nível do submenu.

nav ul ul ul {
	position:absolute;
	left:100%;
	top:0;
}

Pronto, a estrutura básica do menu está criada. Basta adicionar um design, de acordo seu site, e publicar. Uma demostração deste menu, já com um design mais arrojado, utilizando artifícios do CSS3, pode ser vista no site Line25.

Corpo humano definido em html+php

fevereiro 7th, 2011

Just For Fun

Campus Party – Grand Finale

janeiro 26th, 2011

Como deu pra perceber, os posts foram só diminuindo a frequência. Foram dias de muito conhecimento compartilhado, arquivos compartilhados, rede compartilhada, jogos também. Não dava muito tempo para dormir, nem comer. Passei os últimos dias da Campus Party tentando fazer mais contatos com as pessoas. Conversei com o Jonny Ken, Com o Cid (do não salvo), com várias outras pessoas já conhecidas na internet, e tive o prazer de conhecer as Garotas Geeks (apesar de não ter tirado foto com nenhuma delas :(

Bom, façamos um saldo do evento: Houve Apagão! Teve presença ilustre de várias pessoas, como Guilherme Briggs, Al Gore, Steve Wozniak, Marina Silva, Maddog etc. Teve campeonato de Cosplay, jogos (Urban Terror, Futebol, Guitar Hero, etc). Houve queda na internet, como se já não bastasse a queda na energia, e piadas sobre isso. E por fim, e mais chato de tudo isso, filas, filas e muitas filas.

No final teve uma garota que Dançou em cima da mesa, Teve Festa Duro (ou Hard Party), que simplesmente é o fato de reunir a galera no estacionamento para beber e trocar idéias. E teve mais uma fila para ir embora.

A volta foi tão aterrorizantemente cansativa quanto a ida. Gastamos cerca de 20 horas para voltar a Goiânia. Dessas horas, algumas delas foram passadas esperando o pessoal, e esperando o outro ônibus na Rodoviária de Uberlândia.


Cansativo? Sim!!! E muito! Mas ano que vem estou lá de novo!

Tribo do C.I.

Tribo do C.I.

Só mais um blog de informática (só que não)