Markdown.es Logo Markdown.es

¿Te es útil esta web? Apóyala sin coste: si compras en Amazon, hazlo a través de nuestro enlace de afiliado — el precio es el mismo para ti y nos ayuda a seguir.

Tablas en Markdown: sintaxis, alineación y ejemplos

Cómo crear tablas en Markdown con barras verticales y guiones: alinear columnas a izquierda, centro o derecha, meter formato dentro de las celdas y resolver las limitaciones más comunes.

Las tablas no formaban parte del Markdown original de 2004. Llegaron después, con las variantes extendidas, y hoy son parte de GitHub Flavored Markdown (GFM), que es el estándar de facto: funcionan en GitHub, GitLab, Obsidian, Notion, Discourse, VS Code y prácticamente cualquier procesador moderno.

Sintaxis básica

Una tabla se construye con barras verticales | para separar columnas y una línea de guiones que separa la cabecera del cuerpo.

| Lenguaje | Año | Creador |
| --- | --- | --- |
| Markdown | 2004 | John Gruber |
| HTML | 1993 | Tim Berners-Lee |
| LaTeX | 1984 | Leslie Lamport |

Resultado:

LenguajeAñoCreador
Markdown2004John Gruber
HTML1993Tim Berners-Lee
LaTeX1984Leslie Lamport

Tres reglas que hay que respetar:

  1. La fila de guiones es obligatoria. Sin ella no hay tabla, solo texto con barras.
  2. Debe tener tantas columnas como la cabecera. Si la cabecera tiene tres columnas y la línea de guiones dos, la tabla no se procesa.
  3. La cabecera es obligatoria. No existen tablas sin fila de encabezado en GFM. Si no quieres cabecera visible, déjala con celdas vacías (| | |).

Bastan tres guiones por columna (---), pero puedes poner los que quieras. No afectan al ancho final: eso lo decide el CSS.

Alineación de columnas

Aquí es donde la línea de guiones se gana el sueldo. Añadiendo dos puntos : controlas la alineación de cada columna por separado.

SintaxisEfecto
`:---
`:---:
`---:

Un ejemplo con las tres a la vez:

| Producto | Cantidad | Precio |
| :--- | :---: | ---: |
| Teclado | 2 | 89,00 € |
| Monitor | 1 | 249,90 € |
| Cable USB-C | 12 | 7,50 € |

Resultado:

ProductoCantidadPrecio
Teclado289,00 €
Monitor1249,90 €
Cable USB-C127,50 €

Consejo de legibilidad: alinea los números a la derecha. Cuando las unidades, decenas y centenas quedan en la misma columna vertical, las cifras se comparan de un vistazo. Es una convención tipográfica de toda la vida y mejora muchísimo cualquier tabla de datos.

Las barras de los extremos son opcionales

Estas dos tablas producen exactamente el mismo resultado:

| Uno | Dos |
| --- | --- |
| A | B |
Uno | Dos
--- | ---
A | B

La segunda se escribe más rápido, pero la primera es mucho más fácil de leer y de mantener en texto plano. Usa siempre las barras de los extremos: dentro de seis meses lo agradecerás.

Las columnas no necesitan estar alineadas

Esto sorprende a mucha gente. En el archivo fuente, las columnas no tienen que cuadrar visualmente:

| Lenguaje | Año | Creador |
| --- | --- | --- |
| Markdown | 2004 | John Gruber |
| HTML | 1993 | Tim Berners-Lee |

produce el mismo resultado que:

| Lenguaje | Año  | Creador         |
| -------- | ---- | --------------- |
| Markdown | 2004 | John Gruber     |
| HTML     | 1993 | Tim Berners-Lee |

La segunda versión es mucho más legible en crudo, que es precisamente el espíritu de Markdown. La mayoría de editores tienen un atajo para formatear la tabla automáticamente: en VS Code, la extensión Markdown All in One lo hace al guardar.

Formato dentro de las celdas

Dentro de una celda puedes usar la mayoría de los elementos de línea:

| Elemento | Ejemplo |
| :--- | :--- |
| Negrita | **importante** |
| Cursiva | *matiz* |
| Código | `npm install` |
| Enlace | [Markdown.es](https://markdown.es) |
| Tachado | ~~obsoleto~~ |

Resultado:

ElementoEjemplo
Negritaimportante
Cursivamatiz
Códigonpm install
EnlaceMarkdown.es
Tachadoobsoleto

Limitaciones y cómo sortearlas

Las tablas de Markdown son deliberadamente simples. Estas son las cuatro paredes con las que te vas a chocar.

La barra vertical dentro de una celda

Si necesitas un carácter | como contenido, tienes que escaparlo con una barra invertida, o el procesador creerá que estás abriendo una columna nueva:

| Operador | Significado |
| :--- | :--- |
| `\|\|` | O lógico |
| `&&` | Y lógico |
OperadorSignificado
||O lógico
&&Y lógico

Como alternativa puedes usar la entidad HTML |, que también funciona.

Saltos de línea dentro de una celda

No puedes pulsar Intro dentro de una celda: rompería la fila. La única forma de tener varias líneas en una celda es la etiqueta <br>:

| Campo | Valor |
| :--- | :--- |
| Dirección | Calle Mayor 1<br>28013 Madrid<br>España |
CampoValor
DirecciónCalle Mayor 1
28013 Madrid
España

Es la excepción donde <br> es claramente la respuesta correcta y no un parche. Tienes el resto de opciones en saltos de línea.

No hay celdas combinadas

Markdown no admite colspan ni rowspan. No hay forma de fusionar dos celdas. Si tu tabla necesita celdas combinadas, escríbela directamente en HTML: casi todos los procesadores admiten bloques <table> dentro de un documento Markdown.

No hay listas ni bloques dentro de una celda

Tampoco puedes meter una lista de varios elementos ni un bloque de código en una celda. Para listas cortas, el apaño habitual es separar con <br> y un guion:

| Fase | Tareas |
| :--- | :--- |
| Diseño | - Wireframes<br>- Prototipo<br>- Revisión |

Si la tabla se te está complicando tanto, suele ser señal de que los datos piden otra estructura: encabezados y listas normales.

Compatibilidad

PlataformaTablas
GitHub / GitLab
Obsidian
Notion
VS Code (vista previa)
Reddit
Discord
Markdown original (2004)

Discord es la ausencia notable: admite negrita, cursiva y código, pero no tablas.

Atajos para no escribirlas a mano

Escribir tablas grandes a mano es tedioso y propenso a errores. Tienes dos herramientas gratuitas aquí mismo:

Y si la tabla ya está en una página web y la quieres al revés, el conversor de HTML a Markdown se encarga.

Nota histórica

Verás en muchos sitios que las tablas se describen como una característica de Multimarkdown, la extensión que creó Fletcher Penney en 2005 para escribir documentos académicos. Es históricamente cierto —puedes ver el resto de sus aportaciones en la guía de Multimarkdown—, pero hoy las tablas están tan asumidas por GFM y CommonMark que ya no tiene mucho sentido tratarlas como sintaxis exótica. Son, sencillamente, parte de Markdown.