HTML - Encabezados y leyendas

-

Encabezados de tabla

Definición de encabezados de tabla

En las tablas HTML, los encabezados etiquetan columnas o filas de datos. Para definir un encabezado de tabla, se usa la etiqueta <th>. La etiqueta <th> se coloca dentro de la etiqueta <tr> (fila de tabla), al igual que las celdas normales de tabla (<td>). La principal diferencia entre las etiquetas <th> y <td> es que <th> se usa para celdas de encabezado, que generalmente tienen un peso de fuente en negrita y alineación de texto centrada por defecto.

Consejo: Cómo definir encabezados de tabla

<table>
  <tr>
    <th>Encabezado 1</th>
    <th>Encabezado 2</th>
    <th>Encabezado 3</th>
  </tr>
  <tr>
    <td>Dato 1</td>
    <td>Dato 2</td>
    <td>Dato 3</td>
  </tr>
</table>

La primera fila contiene tres etiquetas <th>, definiendo los encabezados para cada columna. La segunda fila contiene etiquetas <td> regulares con los datos reales.

Atributos de encabezado de tabla

Los encabezados de tabla tienen algunos atributos especiales que se pueden usar para mejorar la estructura y accesibilidad de la tabla:

  1. colspan: El atributo colspan permite que una celda de encabezado abarque múltiples columnas. Por ejemplo, <th colspan="2">Encabezado</th> crearía una celda de encabezado que abarca dos columnas.

  2. rowspan: El atributo rowspan permite que una celda de encabezado abarque múltiples filas. Por ejemplo, <th rowspan="3">Encabezado</th> crearía una celda de encabezado que abarca tres filas.

  3. scope: El atributo scope se usa para asociar una celda de encabezado con las celdas de datos que describe. Esto es importante para la accesibilidad, ya que ayuda a los lectores de pantalla a entender la relación entre los encabezados y los datos. El atributo scope puede tener los siguientes valores:

    • row: El encabezado se aplica a la fila.
    • col: El encabezado se aplica a la columna.
    • rowgroup: El encabezado se aplica a un grupo de filas.
    • colgroup: El encabezado se aplica a un grupo de columnas.

Consejo: Uso de atributos de encabezado de tabla

<table>
  <tr>
    <th colspan="2">Encabezado 1 y 2</th>
    <th>Encabezado 3</th>
  </tr>
  <tr>
    <th rowspan="2" scope="row">Encabezado 4</th>
    <td>Dato 1</td>
    <td>Dato 2</td>
  </tr>
  <tr>
    <td>Dato 3</td>
    <td>Dato 4</td>
  </tr>
</table>

La primera celda de encabezado abarca dos columnas usando colspan, la cuarta celda de encabezado abarca dos filas usando rowspan, y el atributo scope se usa para indicar que el cuarto encabezado se aplica a la fila.

El uso de encabezados de tabla con los atributos apropiados ayuda a crear tablas bien estructuradas y accesibles en HTML.

Título de la tabla

Añadir un título a una tabla

El título de una tabla es una breve descripción del contenido o propósito de la tabla. Para añadir un título a una tabla HTML, utiliza la etiqueta <caption>. La etiqueta <caption> debe colocarse justo después de la etiqueta de apertura <table>, antes de cualquier elemento <tr>, <th> o <td>.

Consejo: Tabla HTML con título

<table>
  <caption>Datos de salarios de empleados</caption>
  <tr>
    <th>Nombre</th>
    <th>Puesto</th>
    <th>Salario</th>
  </tr>
  <tr>
    <td>John Doe</td>
    <td>Gerente</td>
    <td>$80,000</td>
  </tr>
  <tr>
    <td>Jane Smith</td>
    <td>Desarrolladora</td>
    <td>$75,000</td>
  </tr>
</table>

Dar estilo a los títulos de las tablas

Por defecto, los títulos de las tablas se muestran encima de la tabla y centrados. Sin embargo, puedes usar CSS para dar estilo y posicionar el título según sea necesario.

Para dar estilo al título de una tabla, dirígete al elemento <caption> en tu CSS:

Consejo: Estilo CSS para el título de la tabla

table caption {
  font-size: 1.2em;
  font-weight: bold;
  color: #333;
  margin-bottom: 10px;
}

Para posicionar el título debajo de la tabla en lugar de encima, utiliza la propiedad CSS caption-side:

Consejo: Posicionamiento CSS para el título de la tabla

table caption {
  caption-side: bottom;
}

La propiedad caption-side acepta dos valores: top (por defecto) y bottom.

Al usar la etiqueta <caption> y darle estilo con CSS, puedes proporcionar una descripción clara y atractiva para tus tablas HTML.

Consideraciones de accesibilidad

Al crear tablas HTML, es importante tener en cuenta la accesibilidad para los usuarios que dependen de tecnologías de asistencia como los lectores de pantalla. Los encabezados y las leyendas de las tablas juegan un papel importante en hacer que las tablas sean accesibles y comprensibles para todos los usuarios.

El uso de encabezados de tabla (<th>) es importante para los lectores de pantalla porque proporcionan contexto y estructura a los datos de la tabla. Los lectores de pantalla anuncian el texto del encabezado antes de leer las celdas de datos correspondientes, ayudando a los usuarios a entender la relación entre los encabezados y los datos. Esto facilita a los usuarios navegar y comprender el contenido de la tabla.

Para mejorar la accesibilidad, use el atributo scope en las celdas de encabezado para definir la asociación entre los encabezados y las celdas de datos. El atributo scope puede tener valores como row, col, rowgroup, o colgroup, dependiendo de si el encabezado se aplica a una fila, columna o grupo de filas o columnas.

Consejo: Tabla con el atributo scope

<table>
  <tr>
    <th scope="col">Header 1</th>
    <th scope="col">Header 2</th>
  </tr>
  <tr>
    <th scope="row">Row Header</th>
    <td>Data</td>
  </tr>
</table>

Proporcionar una leyenda usando la etiqueta <caption> también es importante para la accesibilidad. La leyenda debe describir el contenido o propósito de la tabla, dando a los usuarios una visión general de lo que representa la tabla. Los lectores de pantalla anuncian la leyenda antes de leer la tabla, proporcionando contexto a los usuarios.

Consejo: Tabla con leyenda

<table>
  <caption>Informe de ventas mensuales</caption>
  ...
</table>

Al escribir leyendas, sea descriptivo y conciso. Evite usar leyendas genéricas como "Tabla 1" o "Tabla de datos", ya que no proporcionan información útil sobre el contenido de la tabla.

Al usar encabezados de tabla con atributos scope y proporcionar leyendas, puede mejorar la accesibilidad de sus tablas HTML, haciéndolas más inclusivas y fáciles de usar para todos los usuarios, incluidos aquellos que dependen de tecnologías de asistencia.

Ejemplos y demostraciones

Para entender cómo usar encabezados y leyendas de tabla en HTML, observa algunos fragmentos de código de muestra y ejemplos.

Consejo: Tabla con leyenda y encabezados

<table>
  <caption>Calificaciones de estudiantes</caption>
  <tr>
    <th scope="col">Nombre</th>
    <th scope="col">Matemáticas</th>
    <th scope="col">Ciencias</th>
    <th scope="col">Inglés</th>
  </tr>
  <tr>
    <td>Alice</td>
    <td>90</td>
    <td>85</td>
    <td>92</td>
  </tr>
  <tr>
    <td>Bob</td>
    <td>80</td>
    <td>88</td>
    <td>79</td>
  </tr>
  <tr>
    <td>Charlie</td>
    <td>95</td>
    <td>92</td>
    <td>88</td>
  </tr>
</table>

Este ejemplo muestra una tabla con una leyenda que describe el contenido de la tabla ("Calificaciones de estudiantes") y encabezados de tabla para cada columna ("Nombre", "Matemáticas", "Ciencias" e "Inglés"). El atributo scope asocia los encabezados con sus columnas.

La tabla se ve así:

Calificaciones de estudiantes
Nombre Matemáticas Ciencias Inglés
Alice 90 85 92
Bob 80 88 79
Charlie 95 92 88

Consejo: Tabla con colspan y rowspan

<table>
  <caption>Inventario de productos</caption>
  <tr>
    <th rowspan="2">Categoría</th>
    <th colspan="3">Producto</th>
  </tr>
  <tr>
    <th>Nombre</th>
    <th>Precio</th>
    <th>Cantidad</th>
  </tr>
  <tr>
    <td>Electrónica</td>
    <td>Smartphone</td>
    <td>$599</td>
    <td>100</td>
  </tr>
  <tr>
    <td>Electrónica</td>
    <td>Portátil</td>
    <td>$999</td>
    <td>50</td>
  </tr>
  <tr>
    <td>Ropa</td>
    <td>Camiseta</td>
    <td>$19</td>
    <td>200</td>
  </tr>
</table>

En este ejemplo, la primera celda de encabezado abarca dos filas usando rowspan="2", y la segunda celda de encabezado abarca tres columnas usando colspan="3". El resultado es una estructura de tabla más compleja:

Inventario de productos
Categoría Producto
Nombre Precio Cantidad
Electrónica Smartphone $599 100
Electrónica Portátil $999 50
Ropa Camiseta $19 200

Estos ejemplos muestran cómo los encabezados y leyendas de tabla pueden crear tablas claras y bien estructuradas en HTML. Usando atributos como scope, colspan y rowspan, puedes hacer tablas fáciles de leer y entender, tanto visualmente como para tecnologías de asistencia.