Tablas en Html

Tablas en HTML

Las tablas permiten representar información tabular, en filas y columnas, con cabeceras. Cada elemento de la tabla puede ser simple, o una agrupación de filas, columnas, cabeceras y pies de tabla, subdivisiones, cabeceras múltiples y otros elementos complejos

Como las tablas permiten un control muy detallado, a veces se usan para organizar la estructura general de una página web

Esta práctica no es recomendable, aunque era muy usada en el diseño hace algunos unos años

Es más recomendable utilizar elementos div para la estructura general de la página web

Una tabla se define mediante el elemento table

Las filas se definen con el elemento tr (table row)

Por cada fila se define una celda de elementos td (table data) para contener otros elementos, incluidas otras tablas (aunque no se recomienda, ya que puede obtenerse un resultado visualmente confuso)

En el ejemplo se han listado los números naturales del 1 al 9, rellenado con la primera fila una descripción y las siguientes con los datos

Quedando como resultado:

Número Ordinal
1 Primero
2 Segundo
3 Tercero
4 Cuarto
5 Quinto
6 Sexto
7 Séptimo
8 Octavo
9 Noveno

Spanning

En ocasiones necesitaremos combinar celdas, a esta práctica se la denomina spanning

Para agrupar o combinar celdas de una fila concreta (se aplican a elementos td), usaremos el atributo colspan asignandole como valor el número de celdas que serán usadas

En el ejemplo se han listado tres lenguajes y para resaltar la descripción se ha aplicado spanning sobre la primera fila

Quedando como resultado:

Lenguajes
HTML5 CSS JavaScript

Para agrupar o combinar filas de una columna concreta (se aplican a elementos tr), usaremos el atributo rowspan asignandole como valor el número de filas que serán usadas

En el ejemplo se han listado tres lenguajes y para resaltar la descripción se ha aplicado spanning sobre la primera columna, obteniendo una tabla similar a la del ejemplo anterior pero con los valores colocados en la segunda columna

Quedando como resultado:

Lenguajes HTML5
CSS
JavaScript

Elementos de una tabla

Para añadir complejidad a la tabla podemos añadir más elementos a la misma:

  • caption

    es el título o leyenda de la tabla

    Se muestra fuera de la tabla, por defecto arriba de la misma

    Se suele poner normalmente después del elemento table

  • thead

    sirve como cabecera de la tabla

  • th

    son unas celdas especiales que se usan sólo dentro de la cabecera de la tabla

  • tbody

    se suele usar después del elemento thead para distinguir la cabecera del cuerpo de la tabla

  • tfoot

    sirve como pie de la tabla

    Curiosamente, debe definirse antes de definir un elemento tbody

En el ejemplo se han aplicado todos los elementos que acabamos de definir, como puede apreciarse no hay mucha diferencia con la primera tabla que hemos puesto de ejemplo

Sin embargo, ahora todas sus partes están mejor localizadas y usando hojas de estilo CSS podemos darle un aspecto más atractivo para el usuario

En el ejemplo sólo se ha un valor más a la tabla que originalmente no existía

Gracias al elemento tfoot ahora tenemos la posibilidad de usando JavaScript, añadirle el resultado de cálculos o totales de los valores del resto de celdas

También podemos observar que las celdas dentro del elemento thead aparecen con un tamaño de fuente mayor y en negrita, porque son parte de la cabecera

Al igual que al inicio, gracias al elemento caption, tenemos una breve descripción de nuestra tabla

Quedando como resultado:

Números naturales del 1 al 9
Número Ordinal
10 Décimo
1 Primero
2 Segundo
3 Tercero
4 Cuarto
5 Quinto
6 Sexto
7 Séptimo
8 Octavo
9 Noveno