fancy-navigation-with-css-jqueryFancy Navigator Menu jQuery & CSS es un elegante menú animado desarrollado con jQuery & CSS.

Implementar este menú en nuestros desarrollos es muy simple ya que sólo son necesarios 3 pasos.

Implementación

Estructura HTML

Para crear las estructura del menú en el HTML de la página, es necesario un código como el siguiente:

<ul id="topnav">
    <li><a href="#">Home</a></li>
    <li><a href="#">Services</a></li>
    <li><a href="#">Portfolio</a></li>
    <li><a href="#">Blog</a></li>
    <li><a href="#">About</a></li>
    <li><a href="#">Contact</a></li>
</ul>

Estilos con CSS

En esta parte se utiliza un técnica que imita a una máscara, esto se logra usando :

overflow: hidden;

jquery-menu

ul#topnav {
	margin: 0;
	padding: 0;
	list-style: none;
	float: left;
	font-size: 1.1em;
}
ul#topnav li{
	margin: 0;
	padding: 0;
	overflow: hidden;  /*--Importante - Estado por defecto--*/
	float: left;
	height:40px;
}
ul#topnav a, ul#topnav span { /*--Las etiquetas <a> y <span> comparten
las mismas propiedades de <span> que éste será un duplicado de la etiqueta <a> --*/
	padding: 10px 20px;
	float: left;
	text-decoration: none;
	color: #fff;
	background: url(a_bg.gif) repeat-x;
	text-transform: uppercase;
	clear: both;
	width: 100%;
	height: 20px;
	line-height: 20px; /*--Alineación vertical del texto--*/
}
ul#topnav a{ /*--Hover: cuando el puntero del mouse para por encima--*/
	color: #555;
	background-position: left bottom;
}
ul#topnav span{ /*--Estado de navegación por defecto--*/
	background-position: left top;
}

Animación jQuery

Primero enlazar a la biblioteca jQuery:

<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>

jqeury-animation

$(document).ready(function() {

	$("#topnav li").prepend("<span></span>"); 
//Crear un espacio vacío antes de la etiqueta

	$("#topnav li").each(function() { 
//Por cada item
		var linkText = $(this).find("a").html();
//Encontrar el texto denteo de la etiqueta <a>
		$(this).find("span").show().html(linkText); 
//Agregar el texto a la etiqueta span
	}); 

	$("#topnav li").hover(function() {
//En el hover (cuando el puntero del mouse se posiciona por encima)...
		$(this).find("span").stop().animate({
			marginTop: "-40" //Encontrar la etiqueta<span>
y moverla 40 px hacia arriba.
		}, 250);
	} , function() { //Cuando se quita (retira o mueve) el puntero del mouse...
		$(this).find("span").stop().animate({
			marginTop: "0"  //Mover la etiqueta <span>
devuelta a la posición original (0px)
		}, 250);
	});

});

Fancy Navigator Menu jQuery & CSS.

Web: www.sohtanaka.com/web-design/animate-navigation-with-css-jquery

Por Diego Cambiaso

Comunicador Social, Desarrollador de Software y UX Designer. Blogger desde el 2006, creador de Pixelco Tech. Viajero y fotógrafo. Entusiasta del diseño, apasionado por la tecnología y el social media. EN-ES-IT