Tablas

  • A la hora de mostrar datos tabulados podemos utilizar el concepto de tabla (ej: una grilla, comparar precios u horarios de servicios, etc)
  • En HTML existe el elemento table que define una tabla
  • En una tabla encontramos filas y columnas
  • Para crear una fila utilizamos el elemento tr que significa Table Row o fila de una tabla
  • Las filas tienen como contenidos elementos del tipo celda td que significa Table Data o dato de la tabla
<table>
<tr>
<td>Primer Celda de la primer fila</td>
<td>Segunda Celda de la primer fila</td>
</tr>
<tr>
<td>Primer Celda de la segunda fila</td>
<td>Segunda Celda de la segunda fila</td>
</tr>
</table>
  • En este ejemplo podemos ver que tenemos una tabla con 2 filas (tr) y cada fila tiene 2 celdas (td)
  • En caso de tener una celda vacía, creamos el elemento td igual para que quede bien formada la tabla
  • Las tablas pueden tener 3 sectores definidos (thead, tbody y tfoot)
  • El elemento thead define el encabezado de la tabla
  • El elemento tbody define el cuerpo de la tabla
  • El elemento tfoot define el pie de la tabla
  • Podemos utilizar el elemento th para definir un table heading o encabezado de tabla
  • El th funciona tanto como encabezado de una columna al igual que para una fila
  • Es una buena práctica definir todas las secciones de una tabla
  • Esto ayuda a los lectores de pantalla
<table>
<thead>
<tr>
<th>Desc. Columna 1</th>
<th>Desc. Columna 1</th>
</tr>
</thead>
<tbody>
<tr>
<td>Primer Celda de la primer fila</td>
<td>Segunda Celda de la primer fila</td>
</tr>
<tr>
<td>Primer Celda de la segunda fila</td>
<td>Segunda Celda de la segunda fila</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>Primer Celda del pie</td>
<td>Segunda Celda del pie</td>
</tr>
</tfoot>
</table>

Agregar atributos visuales

  • Existen algunos atributos que nos permiten modificar la forma en que se ven las tablas

  • Estos atributos son parte de las versiones anteriores de HTML pero siguen vigentes

  • En el futuro vamos a utilizar solo CSS para decirle al browser como queremos que se vean nuestros elementos en general

  • Para establecer que la tabla tiene que tener un borde utilizamos el atributo border y un valor numérico en pixeles que define el ancho del mismo

  • También podemos establecer el color de fondo de nuestra tabla utilizando el atributo bgcolor y un color web como valor

  • Las celdas también tiene el atributo bgcolor y de esta forma sobreescribimos el color de fondo de la tabla. Es decir que este atributo es más particular que el de la tabla.

<table border="1" bgcolor="gray">
<thead>
<tr>
<th>Encabezado 1</th>
<th>Encabezado 1</th>
</tr>
</thead>
<tbody>
<tr>
<td bgcolor="white">Contenido</td>
<td>Contenido</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>Pie 1</td>
<td>Pie 2</td>
</tr>
</tfoot>
</table>
  • Otro de los atributos que tienen las tablas nos permiten establecer cual es el ancho por medio del atributo width que acepta un valor numérico en pixeles
  • Las celdas también tienen este atributo y al establecerlo condicionamos el tamaño del resto de la columna
  • Con el atributo cellpadding podemos establecer el margen interior (como un aire) que tiene una celda, acepta un valor numérico en pixeles
  • Para manejar el margen exterior de las celdas usamos el atributo cellspacing que acepta un valor numérico en pixeles
<table width="800" cellpadding="10" cellspacing="10">
<thead>
<tr>
<th width="100">Encabezado 1</th>
<th>Encabezado 1</th>
</tr>
</thead>
<tbody>
<tr>
<td>Contenido</td>
<td>Contenido</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>Pie 1</td>
<td>Pie 2</td>
</tr>
</tfoot>
</table>
  • Podemos unificar o unir celdas y columnas utilizando rowspan y colspan
  • Ambos atributos aceptan un valor numérico con la cantidad de celdas o celdas de columna que queremos unificar
  • Utilizamos rowspan para unificar columnas
  • Por medio de colspan unificamos celdas
<table>
<tr>
<td rowspan="2">Columna unificada</td>
<td>Valor del medio</td>
<td>Valor del medio</td>
<td colspan="2">Celda unificada</td>
</tr>
<tr>
<td>Valor del medio</td>
<td>Valor del medio</td>
</tr>
</table>

Tabla con columnas y celdas unificadas

Práctica extra

  • Crear un nuevo archivo: got.html
  • Reproducir el contenido de la siguiente imagen utilizando todo lo aprendido

Listado de episodios de GOT

  • Para los links se puede utilizar el atributo href con el valor '#' para simular que esta vinculado con otro documento
  • El color verde oscuro es: #2a4c4c
  • El gris oscuro es: #e8eaef
  • El gris claro es: #f7f9fa
  • Para la tipografía en blanco pueden utilizar el siguiente código dentro del encabezado
<table>
<thead>
<tr style="color:white;">
<th>Contenido de color blanco</th>
</tr>
</thead>
</table>
  • Para ver la tabla origina pueden entrar al siguiente link