Listas sin orden: <ul>
Cuando el orden de las cosas no importa, como en la lista de la compra, usa una lista sin orden (unordered list). Cada elemento va en un <li> (list item):
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
El navegador pone una viñeta delante de cada elemento. Con CSS podrás cambiarla o quitarla.
Listas ordenadas: <ol>
Cuando el orden sí importa (pasos, clasificaciones, instrucciones), usa una lista ordenada (ordered list). El navegador numera solo:
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
<ol> tiene algunos atributos útiles:
start="5"empieza a contar desde 5.reversedcuenta hacia atrás (ideal para un «top 10»).type="a"usa letras;type="I", números romanos.
Listas dentro de listas
Dentro de un <li> puedes meter otra lista completa. Así se hacen índices y menús con submenús:
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
Enlaces: <a>
Los enlaces son lo que convierte un montón de páginas en una red: la web (telaraña, en inglés). Se hacen con el elemento <a> (de anchor, ancla) y su atributo href:
<a href="https://developer.mozilla.org/es/">Documentación de MDN</a>
hrefdice a dónde lleva.- El contenido es el texto en el que se hace clic.
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
Además de páginas web, un enlace puede abrir el correo (mailto:) o llamar por teléfono desde el móvil (tel:).
Abrir en una pestaña nueva
Con target="_blank", el enlace se abre en otra pestaña:
<a href="https://es.wikipedia.org" target="_blank">Wikipedia</a>
Escribe buenos textos de enlace
El texto del enlace debe decir a dónde lleva, aunque se lea solo:
- ❌ «Para ver los precios, haz clic aquí».
- ✅ «Consulta nuestros precios».
Las personas que usan lectores de pantalla a menudo escuchan la lista de enlaces de la página sin el texto de alrededor. Una lista de diez «aquí» no sirve de nada.
Rutas: cómo decir dónde está algo
El valor de href es una ruta (o URL). Hay dos tipos.
Rutas absolutas
La dirección completa, con https:// y el dominio. Se usan para ir a otras webs:
<a href="https://es.wikipedia.org/wiki/HTML">HTML en Wikipedia</a>
Rutas relativas
La dirección desde la carpeta del archivo en el que estás. Se usan para ir a tus propias páginas. Imagina esta carpeta de proyecto:
mi-web/
├── index.html
├── contacto.html
└── blog/
├── index.html
└── primer-post.html
| Desde | Para ir a | Escribe | Por qué |
|---|---|---|---|
index.html | contacto.html | contacto.html | Están en la misma carpeta |
index.html | primer-post.html | blog/primer-post.html | Entras en la carpeta blog |
blog/primer-post.html | contacto.html | ../contacto.html | ../ sube a la carpeta de arriba |
blog/primer-post.html | blog/index.html | index.html | Están en la misma carpeta |
Enlaces dentro de la misma página
Puedes saltar a cualquier parte de una página larga. Primero ponle un id (un nombre único) al elemento de destino, y luego enlaza con # + ese nombre:
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
El id debe ser único en la página: no puede haber dos elementos con el mismo.
Errores típicos
- Poner texto o
<p>directamente dentro de<ul>, sin<li>. - Escribir los números a mano en una lista en lugar de usar
<ol>. - Olvidar
https://en enlaces a otras webs:href="www.google.com"se interpreta como un archivo de tu carpeta. - Usar rutas de tu ordenador, como
C:\Users\ana\web\contacto.html. En cuanto subas la web dejarán de funcionar. Usa rutas relativas. - Enlaces que dicen «aquí» o «clic». Describe el destino.
- Escribir
href="precios"en lugar dehref="#precios"para ir a una sección.
Ejercicios
Ejercicio 1: tus películas favoritas (fácil)
Haz un <h2> «Mi top 3 de películas» y una lista ordenada con tres películas. Después, haz que cuente hacia atrás (3, 2, 1).
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
Pista
Para contar hacia atrás, <ol> tiene un atributo sin valor: basta con escribir su nombre.
Solución
<h2>Mi top 3 de películas</h2>
<ol reversed>
<li>El viaje de Chihiro</li>
<li>Regreso al futuro</li>
<li>Coco</li>
</ol>
Ejercicio 2: arregla la lista (fácil)
Esta lista anidada tiene dos errores. Encuéntralos y corrígelos.
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
Pista
Recuerda: el hijo directo de <ul> siempre es <li>, y la sublista va dentro del <li> del que depende.
Solución
<ul>
<li>Europa
<ul>
<li>España</li>
<li>Portugal</li>
</ul>
</li>
<li>Asia</li>
</ul>
Ejercicio 3: menú de navegación (medio)
Crea un menú con una lista sin orden de tres enlaces: «Inicio» a index.html, «Blog» a blog/index.html y «MDN» a https://developer.mozilla.org/es/ (este último en una pestaña nueva).
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
Pista 1
Cada <li> contiene un <a>. El enlace va dentro del elemento de la lista.
Pista 2
Las dos primeras rutas son relativas; la tercera es absoluta.
Solución
<ul>
<li><a href="index.html">Inicio</a></li>
<li><a href="blog/index.html">Blog</a></li>
<li><a href="https://developer.mozilla.org/es/" target="_blank">MDN</a></li>
</ul>
Ejercicio 4: rutas (reto)
Con la carpeta de abajo, escribe el href para ir: a) de index.html a foto.html; b) de foto.html a index.html; c) de foto.html a contacto.html.
mi-web/
├── index.html
├── contacto.html
└── galeria/
└── foto.html
Pista
Para salir de la carpeta galeria hacia la de arriba se usa ../.
Solución
a) galeria/foto.html · b) ../index.html · c) ../contacto.html
Ficha resumen
<ul>= lista sin orden (viñetas).<ol>= lista ordenada (números). Cada elemento, en un<li>.- Las sublistas van dentro de un
<li>. - Enlace:
<a href="destino">texto que describe el destino</a>. - Ruta absoluta:
https://…, para otras webs. Ruta relativa:pagina.html,carpeta/pagina.html,../pagina.html, para tus páginas. href="#id"salta a un elemento de la misma página.mailto:ytel:abren el correo y el teléfono.target="_blank"abre en otra pestaña (con moderación).
Glosario
| Término | Definición |
|---|---|
<ul> | Lista sin orden, con viñetas (unordered list). |
<ol> | Lista ordenada, numerada automáticamente (ordered list). |
<li> | Cada elemento de una lista (list item). |
| Enlace | Elemento <a> que lleva a otra página, a otra parte de la misma página, a un correo o a un teléfono. |
href | Atributo de <a> con la dirección de destino del enlace. |
| URL | Dirección de un recurso en la web, como https://es.wikipedia.org/wiki/HTML. |
| Ruta absoluta | Dirección completa, con protocolo y dominio. Sirve para enlazar a otras webs. |
| Ruta relativa | Dirección calculada desde la carpeta del archivo actual. Sirve para enlazar tus propias páginas. |
id | Atributo con un nombre único para un elemento, que permite enlazarlo con #nombre. |