dominios y alojamiento web en hostalia

Mapas de imágenes con HTML

18 de abril de 2002
Valoración del artículo:
Explicamos detalladamente el proceso para crear mapas de imágenes, osea, imágenes que tienes varios enlaces asociados en distintas áreas.
Atención: Contenido exclusivo de DesarrolloWeb.com. No reproducir. Copyright.
En capítulos anteriores hemos podido adentrarnos en el elemento básico de navegación del web: El enlace hipertexto. Hemos visto que estos enlaces son palabras, textos o imágenes que, al pinchar sobre ellos, nos envían a otras páginas o zonas.

Los mapas de imágenes es un nuevo planteamiento de navegación que incorpora una serie de enlaces dentro de una misma imagen. Estos enlaces son definidos por figuras geométricas y funcionan exactamente del mismo modo que los otros enlaces. Podéis ver el funcionamiento de uno en este enlace.

En un principio, estos mapas no eran directamente reconocidos por los navegadores y recurrían a tecnologías de lado del servidor para ser visualizados. Hoy en día pueden ser implementados por medio de código HTML tal y como veremos en este capitulo.

Podemos utilizar estos mapas, por ejemplo, en portadas donde damos a conocer cada una de las secciones del sitio por medio de una imagen. También puede ser muy práctico en mapas geográficos donde cada ciudad, provincia o punto cualquiera representa un enlace a una página.

En cualquier caso, el uso de estos mapas ha de estar sistemáticamente acompañado de un texto explicativo que dé a conocer al usuario la posibilidad de hacer clic sobre los distintos puntos de la imagen. Frases como "Haz clic sobre tal icono para acceder a tal información" resultan muy indicativas a la hora de hacer intuitiva la navegación por los mapas de imágenes. Por otro lado, no esta de más introducir esa misma explicación en el atributo alt de la imagen.

Así pues, un mapa de imagen esta compuesto de dos partes:

  • La imagen propiamente dicha que estará situada como de costumbre dentro de la etiqueta <body> de nuestro documento HTML.
  • Un código, situado en el interior de la etiqueta <map>, que delimitara por medio de líneas geométricas imaginarias cada una de las áreas de los enlaces presentados en la imagen.
Imagen que ilustra el manejo de coordenadas en imágenes Las líneas geométricas que delimitan los enlaces, es decir, las áreas de los enlaces, han de ser definidas por medio de coordenadas. Cada imagen es definida por unas dimensiones de ancho (X) y alto (Y) y cada punto de la imagen puede ser definido por tanto diciendo a que altura (x) y anchura (y) nos encontramos. De este modo, la esquina superior izquierda corresponde a la posición 0,0 y la esquina inferior derecha corresponde a las coordenadas X,Y. Si deseamos saber qué coordenadas corresponden a un punto concreto de nuestra imagen, lo mejor es utilizar un programa de diseño grafico como Photoshop o Paint Shop Pro.

La mejor forma de explicar el funcionamiento de este tipo de mapas es a partir de un ejemplo práctico. Supongamos que tenemos una imagen con un mapa como esta:

Pulsa para ver la página de mis amigos Pulsa para ver mi novia Pulsa para conocer a mi Familia Pulsa para conocer mi trabajo Mapa de imágenes. Pulsa en cada una de los círculos.
Pulsa en los círculos para acceder a las secciones!

Dentro de ella queremos introducir un enlace a cada uno de los elementos que la componen. Para ello, definiremos nuestros enlaces como zonas circulares de pequeño tamaño que serán distribuidas a lo largo y ancho de la imagen.

Veamos a continuación el código que utilizaremos:

<table border=0 width=450><tr><td align="center">
<map name="mapa1">
<area alt="Pulsa para ver la página de mis amigos" shape="CIRCLE" coords="44,36,29" href="#">
<area alt="Pulsa para ver mi novia" shape="CIRCLE" coords="140,35,31" href="#">
<area alt="Pulsa para conocer a mi Familia" shape="circle" coords="239,37,30" href="#">
<area alt="Pulsa para conocer mi trabajo" shape="CIRCLE" coords="336,36,31" href="#">
</map>
<img src="images/html/mapa1.gif" width="380" height="72" alt="Mapa de imágenes. Pulsa en cada una de los círculos." border="0" usemap="#mapa1">
<br>
Pulsa en los círculos para acceder a las secciones!
</td></tr></table>

Nota: Los href de las áreas van a #
Este es un ejemplo parcial de utilización de los mapas, faltaría colocar los href con valores reales y no con la #. Cada uno de los enlaces de las áreas -atributo href de la etiqueta <area>- deberían llevar a una página web. El ejemplo quedaría completo si creasemos todas las páginas donde enlazar las áreas y colocasemos los href dirigidos hacia dichas páginas. Como no hemos hecho las páginas "destino" hemos colocado enlaces que no llevan a ningún sitio, que, como puedes ver, se indica con el caracter "#".

Podéis observar, tal y como hemos explicado antes, que nuestro mapa consta de dos partes principales: la imagen y la etiqueta <map> que define las áreas de cada enlace.

Cada área se indica con una etiqueta <area>, que tiene los siguientes atributos:

alt
Para indicar un texto que se mostrará cuando situemos el ratón en el área.

shape
Indica el tipo de área.

coords
Las coordenadas que definen el área. Serán un grupo de valores numéricos distintos dependiendo del tipo de área (shape) que estemos definiendo.

href
Para indicar el destino del enlace correspondiente al área.

En este caso hemos utilizado unas áreas circulares (shape="CIRCLE"), que se definen indicando el centro del círculo -una coordenada (X,Y) y el radio, que es un número entero que se corresponde con el número de pixels desde el centro hasta el borde del círculo.

Tipos de áreas: shape distintas

Distintos tipos de áreas. Shape distintas. Existen tres tipos de áreas distintas, suficientes para hacer casi cualquier tipo de figura. En el dibujo que acompaña estas líneas se puede ver una representación de las áreas, que detallamos a continuación.

shape="RECT"
Crea un área rectangular. Para definirla se utilizan las coordenadas de los puntos de la esquina superior izquierda y la esquina inferior derecha. Tal como están nombradas dichas coordenadas en nuestro dibujo, el área tendría la siguiente etiqueta:

<area shape="RECT" coords="X1,Y1,X2,Y2" href="#">

shape="CIRCLE"
Crea un área circular, que se indica con la coordenada del centro del círculo y el radio. A la vista de nuestro dibujo, la etiqueta de un área circular tendría esta forma:

<area shape="CIRCLE" coords="X1,Y1,R" href="#">

shape="POLY"
Este tipo de área, poligonal, es la más compleja de todas. Un polígono queda definido indicando todos sus puntos, pero atención, los tenemos que indicar en orden, siguiendo el camino marcado por el perímetro del polígono. A la vista del dibujo y los nombres que hemos dado a los puntos del polígono, la etiqueta <area> quedaría de esta forma.

<area shape="POLY" coords=" X1,Y1, X2,Y2, X3,Y3, X4,Y4" href="#">

Compartir en redes sociales

Comentarios
Fueron enviados 34 comentarios al artículo
15 comentarios no revisados
19 comentarios revisados:
Por: Ikiam
10/11/2007
Me agrada mucho los manuales de esta pagina y he de decir que sin saber casi nada de programcion web, creo que vale aclarar que los mapas en imagenes "FUNCIONAN" bien excepto cuando trabajas con tamaño de imagenes por porcentajes, tambien funciona en tal situación, pero es muy impresiso y algo "difil de manejar" crio que es asi, no estoy seguro.
Un saludo desde la mitad del mundo.
Por: ricardo
10/12/2008
me ha ayudado muxa la informacion pero si me pudieras ayudar mas con est tema esqe nuestro jefe nos ha mandado un trabajo muy importante qe tiene qe ver con esto, y yo qe soy nuevo en la empresa nose aun qe hacer podrias ayudarme un poquillo qe tal estas tu qe sabes manejarte con esto nose podrais decirme algo por aqui vale venga gracias y necesito ayuda sinome matan en el curro xd
Pregunta
Por: andrea
26/5/2009
Oye disculpa copie el mismo codigo em mi pag pero no se ve la imagen como hago responde plis proyecto de liceo gracia sesta muy bueno...
EXCELENTE
Por: Mario
29/5/2009
Muy buen artículo, no lo había encontrado tan bien explicado.

Muchas gracias!!
Muy Bien!!!
Por: kazbam
03/7/2009
Gracias por la info, me tocó desarrolar un website y el que coordina el trabajo me dijo que hiciera la imagen, luego la cortara en todas las secciones que tendrían enlaces y la rearmara usando tablas para que pareciera una sola imagen. ¡Qué lata! Con esto quedó de lujo y sin tanto trabajo.
Muchas gracis.
buenisimo
Por: amadeo
05/8/2009
me ayudo mucho... estoy haciendo un curso y lo explicaron maso menos ... lo entendi mejor por aca muchas gracias
Mapas de imagen con HTML
Por: jos
16/8/2009
Cuando ponemos el cursor encima de una zona del mapa de imagen,aparece un rectangulo con el texto que indica lo que vamos a encontrar si pinchamos.
¿Porqué transcurridos unos segundos desaparece?
¿Se puede dejar fijo para que no desaparezca mientras no quitemos el cursor de encima?
( me sería de mucha utilidad) GRACIAS.
Excelente tutorial!
Por: GabrielRAM
13/9/2009
Lo use y en un par de minutos ya tenia todo listo! Muchas gracias por el tutorial, me resulto muy util!!!
Mil Gracias.
Por: ULTREICH
05/2/2010
Mil Gracias por el artículo. Me ha servido sobremanera.
Soy nuevo en ésto pero ya logre hacer mi primera imagen con multi hipervinculos.
Saludos
MAPAS DE IMAGENES
Por: HUGO
31/3/2010
EXCELENTE Y CLARO TU COMENTARIO SOBRE ESTE TEMA.
Duda con href
Por: Omar
09/5/2010
Hola.! Primero que nada, muchas gracias por el artículo, es bastante bueno.!!!

Y ya que estamos en eso... una duda: como prueba, hise todo prácticamente como está en el texto para el mapa circular con link a una página [yo puse google...]

Todo sale de maravilla, sólo que al poner el cursor sobre la imagen no aparece acceso a la página, ni tampoco al darle click se abre ésta...
a qué se puede deber esta situación?
DUDAS
Por: monis
17/5/2010
Muy interesante tu articulo, lo que no entiendo es que cuando uno abre le block de notas, digamos quiere solo poner la coodenadas de las esdquinas del rectanngulo, pues ovio uno la guarda com.htm y bare como pagina web, pero cuando le doy clip sobre las esquinas no me funciona.

de que forma hay que pone las coordenadas.

gracias

bye
Muy bueno pero falta disponer la imagen para hacer la práctica
Por: Alexander
21/5/2010
Muy bueno pero falta disponer la imagen para hacer la práctica, inicialmente no sabía porqué no me funcionaba, luego me di cuenta que la imagen no quedaba a disposición.
incrustar el código map en CSS
Por: Sebas
02/6/2010
Muy bueno el articulo. Quisiera saber como usar ese codigo en un archivo CSS que ya tengo para mi pagina. Mi archivo CSS incrusta la imagen en el html. ¿Donde coloco la etiqueta <map> que asigna las coordenadas para esa imagen?
Muchas gracias!
Muchas gracias
19/10/2010
Muy buena explicación, me es de mucha ayuda ahora que estoy aprendiendo HTML... y debo confesar que me tenia un poco confundido este tema pero ya logre captar muy bien.
Muchas gracias.... xDDD!!1

Lancro
Esta parte es crucial
20/10/2010
Esta parte es muy importante para diseñar tu web con el photoshop y despues hacer que ese dibujo sirva de algo, en la mayoria de manuales html que me he leido, ademas de enfocarse en otras cosas, esta parte venia explicada muy superficialmente, aqui viene estupenda, felicidades por el articulo.
muy bueno
Por: raper10
22/10/2010
un saludo a todo el staff de desarrollo web es una excelente sitio web aunque novato; me he estado quebrando la cabeza haciendo ejercicios y tratando de entender los temas a la perfeccion que voy viendo en el manual de html aunque quiero comentar que todo esta muy bien explicado solamente es, que son temas nuevos para mi y me tardo un poquito en procesarlos; hablando de esto entendi perfectamente todo poner cordenadas utilizar la etiqueta map etc excepto una cosa que no me ha quedado clara yo se como sacar el radio o el diametro de un circulo pero fisicamente o sea con un lapiz un cuaderno y una regla, pero no se como hacerlo por medio de la pc no se si se puede sacar por medio de photoshop cs5 o con otro programa ayuda por favor. de antemano gracias
dudas-map-area-shape-circle
Por: makartur
29/11/2010
Hola.
No sé como aplicar las coordenadas del asunto al que me refiero.
X e Y sé buscar en photoshop, pero el valor del radio como se halla? Porque el radio no es un punto o píxel en la imagen, es una línea.

Gracias de todas formas.
mamurrai

photode...
Sobre SWF
11/8/2011
Estoy intentando usar este metodo en un index despues de cargar una pequeña animacion flash, osea un archivo swf y mi intencion es que al pinchar al finalizar el swf, utilizar este metodo para entrar en la web. El problema es que ni usando etiquetas div en diferentes niveles el swf siempre se queda encima del map, y por tanto no es posible hacer click. Si alguien tienen una solucion, estaria encantado de escucharla. Gracias

Manuales relacionados
Categorias relacionadas
El autor
Rubén Alvarez
Redactor de DesarrolloWeb.com
http://www.desarrolloweb.com
Lectura recomendada
Compra este libro en Agapea, la librería urgente a domicilio.
Últimas noticias
Donaciones
Si piensas que te hemos ayudado y merecemos tu apoyo económico...