Jairo Blanco

Blog de Jairo Blanco

Comentando tecnologías web.
Página principal » Menu con lista horizontal con imágenes y texto centrado

Menu con lista horizontal con imágenes y texto centrado (6,549 lecturas)

15 Noviembre, 2007 por jairo

Después de buscar en la red algun "Snippet" de código de cómo crear un menu de iconos con listas, horizontal y además con texto centrado en CSS y no encontrar nada, he tenido que ponerme manos a la obra y crearlo. Es fácil de ver este tipo de menu rápido en las webs maquetado con las ya olvidadas tablas , pero no tanto con CSS y XHTML.

He probado varios métodos, unos más simples que otros pero todos ellos mostraba diferencias visuales entre navegadores como IE7 y FireFox 2.0.0.9. Lo más difícil ha sido centrar la imagen y el texto, pero con una buena combinación de las propiedades "float" y "display" he conseguido lo que quería. Además este código permite que el espacio de cada icono se autoextienda cuando escribimos un texto largo. Por cierto, en el código he centrado la lista y además he introducido un borde en la parte inferior e izquierda para que se vea mejor el centrado de los iconos y texto.

El código fuente del CSS es simple y puede quedar más simple quitanto los bordes y el centrado general.
CSS:
  1. #quickmenu
  2. {
  3. width:600px;
  4. margin-left:auto;
  5. margin-right:auto;
  6. }
  7. #quickmenu ul{
  8. margin:0;
  9. padding:0;
  10. }
  11. #quickmenu ul li{
  12.  
  13. display:inline;
  14. border-left:solid 1px #CCCCCC;
  15. border-bottom:solid 1px #CCCCCC;
  16. float:left;
  17. text-align:center;
  18. }
  19. #quickmenu ul li.firstelement{
  20. border:0;
  21. border-bottom:solid 1px #CCCCCC;
  22. }
  23. #quickmenu a{
  24. display:block;
  25. background-repeat:no-repeat;
  26. background-position:top;
  27. padding:40px 10px 0px 10px;
  28. }
  29. #inicioico{background-image:url(wp-content/uploads/2007/11/ico1.gif);}
  30. #ico1{background-image:url(wp-content/uploads/2007/11/ico2.gif);}
  31. #ico2{background-image:url(wp-content/uploads/2007/11/ico1.gif);}
  32. #ico3{background-image:url(wp-content/uploads/2007/11/ico2.gif);}
  33. #ico4{background-image:url(wp-content/uploads/2007/11/ico1.gif);}
  34. #ico5{background-image:url(wp-content/uploads/2007/11/ico2.gif);}

Aquí tenemos el código HTML. Como veis queda un código simple y limpio, ya que por ejemplo, no introduzco las imágenes con la etiqueta "IMG". Además, utilizando esta etiqueta no se centraba bien el texto y la imagen.
HTML:
  1. <div id="quickmenu">
  2.   <ul>
  3.     <li class="firstelement"><a href="" id="inicioico">Inicio</a></li>
  4.     <li><a href="" id="ico1">Ico 1</a></li>
  5.     <li><a href="" id="ico2">Icono 2</a></li>
  6.     <li><a href="" id="ico3">Ico 3</a></li>
  7.     <li><a href="" id="ico4">Icono 4</a></li>
  8.     <li><a href="" id="ico5">ico</a></li>
  9.   </ul>
  10. </div>

1 Estrella2 Estrellas3 Estrellas4 Estrellas5 Estrellas (2 votos, media: 4.5 de 5)
Loading ... Loading ...
Imprimir
del.icio.us:Menu con lista horizontal con imágenes y texto centrado digg:Menu con lista horizontal con imágenes y texto centrado furl:Menu con lista horizontal con imágenes y texto centrado Y!:Menu con lista horizontal con imágenes y texto centrado magnolia:Menu con lista horizontal con imágenes y texto centrado

4 Respuestas para “Menu con lista horizontal con imágenes y texto centrado”

  1. MARCELO Dice:

    HOLA,MIRA TENGO UN BLOG Y NECESITO UN MENU HORIZONTAL DESPLEGABLE,ADONDE TENGO QUE PEGAR ESTOS CODIGOS,EN EL EN EL EN QUE PARTE DEL HTML?????DE LA PLANTILLA ,DESDE YA MUCHAS GRACIAS.

  2. LUIS D. JANER Dice:

    Muchisimas Gracias, justo lo que andaba buscando…. AHora trataré de colocar el texto bajo las imagenes!

  3. Guillermo Dice:

    muy bueno el menu, excelente !! podrías decirme como quitar el punto que sale antes del texto debido a la propiedad
    gracias !!

  4. 7er Dice:

    Gracias!! es lo q buscaba! Suerte!

Dejar un comentario

XHTML: Puedes usar estas etiquetas: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>