Menu

Salto de línea en HTML: la etiqueta br y los cortes de línea

Usa <br> para empezar una línea nueva dentro de un bloque de texto. Aprende cuándo <br> es lo correcto y cuándo es mejor un párrafo, cómo conservar los saltos de línea de tu texto, cómo dejar que las palabras largas se corten con <wbr> y cómo evitar que una línea se corte.

Esta página incluye editores ejecutables: edita, ejecuta y ve el resultado al instante.

Cómo hacer un salto de línea

Pon <br> donde quieras que empiece la línea nueva. Es un elemento vacío, así que no tiene etiqueta de cierre:

La dirección se corta justo en cada <br>. El segundo párrafo se queda en una línea aunque el código fuente tenga un salto de línea dentro: HTML trata los saltos de línea, las tabulaciones y las series de espacios como un solo espacio. Por eso existe <br>.

<br>, <br/> y <br /> producen el mismo elemento. Usa el que use tu proyecto (JSX y XHTML exigen la barra).

br vs p: los saltos no son espaciado

Un <br> termina una línea dentro del mismo párrafo. Un <p> nuevo empieza un párrafo nuevo, con espacio arriba y abajo gracias a los márgenes por defecto. Apilar etiquetas <br> para crear espacio funciona, pero es frágil y dice algo que no es:

Las dos cajas se ven parecidas, pero para un lector de pantalla la primera es un solo párrafo, y cambiar el espaciado obliga a editar cada página. En la segunda, el hueco es una línea de CSS.

Buenos usos de <br>: direcciones, poemas y letras de canciones, y las líneas de una firma, donde el salto pertenece al texto. Para todo lo demás, usa párrafos, listas o encabezados.

Conservar los saltos de línea de tu texto

Cuando el texto viene de otro sitio (un cuadro de comentarios, una base de datos, un script), tiene caracteres de salto de línea reales en lugar de etiquetas <br>. El CSS white-space: pre-line hace que el navegador muestre esos saltos como saltos de línea:

La misma cadena se ve en una línea en la caja gris y en tres líneas en la azul. Además es más seguro que meter etiquetas <br> en el texto de los usuarios con innerHTML, lo que les permitiría inyectar HTML. Para conservar también los espacios y la sangría, usa white-space: pre, que se explica en la página de espacios en HTML.

Dejar que las palabras largas se corten: wbr

Una palabra o una URL larga sin espacios puede desbordar una caja estrecha. <wbr> marca un punto donde el navegador puede cortar la línea si lo necesita, y no hace nada en caso contrario:

La primera ruta se sale de su caja; la segunda se corta en los puntos <wbr>. Para texto que no controlas, la propiedad CSS overflow-wrap: anywhere corta las palabras largas en cualquier punto.

Evitar que una línea se corte

A veces quieres lo contrario: mantener juntos "10 km" o un número de teléfono. Hay dos herramientas:

&nbsp; es un espacio en el que el navegador no corta la línea, así que "10" y "km" se quedan juntos. white-space: nowrap mantiene todo un span en una línea. Cambia &nbsp; por un espacio normal, o quita la clase, y con este ancho los dos se parten en dos líneas.

Errores comunes

  • Pulsar Enter en el código fuente y esperar una línea nueva. Los saltos de línea en HTML son espacios. Usa <br>, elementos separados o white-space: pre-line.
  • Apilar <br><br><br> para dar espacio. Usa párrafos y margin.
  • Usar <br> para construir una lista. Usa <ul> u <ol> con <li>, que los lectores de pantalla anuncian como lista.
  • Escribir </br>. No es válido. Escribe <br>.
  • Añadir <br> al texto de los usuarios con innerHTML. Asigna textContent y usa white-space: pre-line en su lugar.

Preguntas frecuentes

¿Cómo hago un salto de línea en HTML?

Inserta <br> donde debe empezar la nueva línea: Línea uno<br>Línea dos. Pulsar Enter en tu archivo HTML no funciona, porque los navegadores tratan los saltos de línea del código fuente como espacios normales.

¿Debo escribir <br>, <br/> o <br />?

Los tres funcionan en HTML y producen el mismo elemento. <br> es la forma HTML simple; las versiones con barra se aceptan por compatibilidad con XHTML y JSX. </br> solo no es válido, aunque los navegadores lo leen como otro salto de línea.

¿Cuándo debo usar <br> en lugar de <p>?

Usa <br> cuando el salto de línea forma parte del propio contenido, como en una dirección o un poema. Usa elementos <p> separados para párrafos distintos, y el margin de CSS para el espaciado, en lugar de apilar etiquetas <br>.

¿Cómo conservo los saltos de línea de un texto sin añadir etiquetas <br>?

Dale al elemento white-space: pre-line en el CSS. El navegador muestra entonces cada salto de línea del texto como un salto real, y sigue juntando los espacios sobrantes. Es útil para comentarios de usuarios y texto cargado con JavaScript.

¿Cómo evito un salto de línea en HTML?

Envuelve el texto en un elemento con white-space: nowrap, o une dos palabras con un espacio de no separación &nbsp; para que siempre queden en la misma línea.

Coddy programming languages illustration

Aprende a programar con Coddy

COMENZAR