Ver Mensaje Individual
  #18 (permalink)  
Antiguo 14/03/2011, 13:45
Avatar de ContactarNET
ContactarNET
 
Fecha de Ingreso: septiembre-2010
Mensajes: 59
Antigüedad: 13 años, 7 meses
Puntos: 3
Respuesta: Sigo con mi problemita de Menu

mira yo te recomendaria hacer todo de 0, osea vos agarras tenes en tu html definido un div para tu menu, borras todo lo de adentro y solo dejas definido el div meun sin nada adentro, todo lo que esta hasta ahora, lo podes comentar, o borrar, da igual.

Ahora dentro de ese div que dejaste copia y pega esto:

Código HTML:
Ver original
  1. <ul id="nav">
  2.     <li><a href="#">Menu 1</a>
  3.         <ul class="submenu">
  4.             <li><a href="#">Submenu 1</a></li>
  5.             <li><a href="#">Submenu 2</a></li>
  6.             <li><a href="#">Submenu 3</a></li>
  7.         </ul>
  8.     </li>
  9.     <li><a href="#">Menu 2</a>
  10.         <ul class="submenu">
  11.             <li><a href="#">Submenu 1</a></li>
  12.             <li><a href="#">Submenu 2</a></li>
  13.             <li><a href="#">Submenu 3</a></li>
  14.         </ul>
  15.     </li>
  16.     <li><a href="#">Menu 3</a>
  17.         <ul class="submenu">
  18.             <li><a href="#">Submenu 1</a></li>
  19.             <li><a href="#">Submenu 2</a></li>
  20.             <li><a href="#">Submenu 3</a></li>
  21.         </ul>
  22.     </li>
  23.     <li><a href="#">Menu 4</a>
  24.         <ul class="submenu">
  25.             <li><a href="#">Submenu 1</a></li>
  26.             <li><a href="#">Submenu 2</a></li>
  27.             <li><a href="#">Submenu 3</a></li>
  28.         </ul>
  29.     </li>
  30. </ul>


al css le agregaste esto.

Código CSS:
Ver original
  1. a{
  2. display: block;
  3. text-decoration: none;
  4. color: #004a80;
  5. padding: 5px;
  6. }
  7.  
  8. ul{
  9. width: 500px;
  10. height: 28px;
  11. }
  12.  
  13. ul,li{
  14. list-style: none;
  15. margin:0;
  16. padding:0;
  17. }
  18.  
  19. #nav{
  20. font-family: 'Century Gothic', sans-serif;
  21. }
  22.  
  23. #nav li{
  24. float:left;
  25. position: relative;
  26. width: 125px;
  27. font-size: 14px;
  28. font-variant: small-caps;
  29. border-top:1px solid #004a80;
  30. border-bottom:1px solid #004A80;
  31. }
  32.  
  33. .submenu{
  34. display: none;
  35. position: absolute;
  36. left: -1px;
  37. border:none;
  38. height: auto;
  39. background: none;
  40. }
  41.  
  42. #nav .submenu li{
  43. float: none;
  44. position: static;
  45. margin: 0;
  46. font-size: 11px;
  47. font-variant: normal;
  48. border: 1px solid #004a80;
  49. border-top: none;
  50. width: 124px;
  51. }
  52.  
  53. #nav .submenu li a{
  54. color: #FFFFFF;
  55. background: #004a80 url('fondo_menu_vertical.png') repeat-x 0 0;
  56. width: 114px;
  57. height: 16px;
  58. }


y por ultimo importamos los dos JS para que funcione el menu:

Código Javascript:
Ver original
  1. <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript" charset="utf-8"></script>
  2. <script type="text/javascript" src="jquery.backgroundPosition.js"></script>


Luego, deberiamos crear un .js nuevo con el nombre. "jquery.backgroundPosition.js" que corresponde a la llamada de arriba, y dentro de el, ponemos este codigo:


Código Javascript:
Ver original
  1. $(function(){
  2.     $('#nav>li').hover(
  3.         function(){
  4.         $('.submenu',this).stop(true,true).slideDown('fast');
  5.         },
  6.         function(){
  7.         $('.submenu',this).slideUp('fast');
  8.         }
  9.     );
  10.  
  11.     $('.submenu li a').css( {backgroundPosition: "0px 0px"} ).hover(
  12.         function(){
  13.         $(this).stop().animate({backgroundPosition: "(0px -99px)"}, 250);
  14.         },
  15.         function(){
  16.         $(this).stop().animate({backgroundPosition: "(0px 0px)"}, 250);
  17.         }
  18.     );         
  19. });

NOTA: En el ejemplo esta todo trabajo en la raiz del proyecto.

Probamos en navegador, y deberia andar perfecto, solo falta la foto de fondo que es esta:

http://www.davidrojas.net/demos/fondo_menu_desplegable.png

Que corresponde al estilo CSS. "background: #004a80 url('fondo_menu_vertical.png') repeat-x 0 0;"

Yo la implente en mi web de esta misma forma, y funciono a la perfeccion, depues tenes que darle el estilo que vos gustes, con tus fuentes etc. pero creo que ya sabes.

Espero que te ayude,
Saludos,
Gabriel.
__________________
Contactar NET Diseño y Desarrollo web

CEO / Programación.
Gabriel.