Las tablas son una de las herramientas más potentes del lenguaje Html ya que, además de crear las típicas tablas de datos, permite distribuir el texto y las imágenes en nuestra página con una infinidad de posibilidades pero con un sencillo formato.
Para crear una tabla sencilla sólo necesitamos tres etiquetas:
<table> para definir la tabla<tr> para definir las filas<td> para definir las celdas de
cada filaA continuación tienes un resumen de las propiedades de estas etiquetas y sus principales atributos.
| Etiquetas | |||||||
|---|---|---|---|---|---|---|---|
<table> </table> |
Inicio y fin respectivamente de la tabla | ||||||
<tr> </tr> |
Inicio y fin de una fila | ||||||
<td> </td> |
Inicio y fin de una celda | ||||||
<th> </th> |
Inicio y fin de una celda de encabezado. No es
obligatoria pudiéndose utilizar en su lugar <td> |
||||||
<caption> </caption> |
Indica el título de la tabla. Por defecto se
representa encima de esta, aunque puede cambiarse usando hojas de
estilo. Su uso no es obligatorio, pero si se utiliza ha de ir necesariamente después de la etiqueta <table> |
||||||
| Ejemplo | Estructura | ||||||
|
<table>Es conveniente estructurar la escritura del
código Html metiendo las líneas hacia la derecha al crear
tablas, esto ahorrará posteriormente tiempo de búsqueda y
permitirá trabajar mucho mejor con las páginas
|
||||||
horario.htmHORARIO DE
y tu grupo
A continuación tienes un resumen de los posibles atributos
con los que personalizar una tabla. Recuerda que puedes, como siempre,
utilizar el atributo style para añadir
más efectos, por ejemplo con background-color
para cambiar el color de fondo de las celdas.
Atributos opcionales para <table> |
|
|---|---|
border[="número"] |
Indica si tiene borde y el grosor, si se omite no
se muestra.border - muestra el borde
por defectoborder="10" - muestra un
borde de 10 pixels |
sumary="texto" |
Indica un resumen o una explicación del contenido de la tabla. |
width="anchura" |
Indica la anchura de la tabla. Si indicamos un
número indica pixels, podemos indicar porcentage poniendo el
símbolo % a continuaciónwidth="250" - tabla de 250
pixels de anchowidth="90%" - tabla de 90%
del ancho de la ventana del navegadorSi no se indica este atributo, el navegador establecerá el ancho de tabla que crea oportuno según su contenido. |
cellpadding="número" |
Indican
respectivamente el espacio entre el borde de las celdas y el
contenido de estas y el espacio entre celdas contiguasLa imagen de la izquierda representa estos atributos. |
frame="valor" |
Indica que bordes del marco de la tabla se
mostrarán. Sus posibles valores son:
void - Ningún lado. Este
es el valor por defecto.above - Sólo el borde superior.below - Sólo el borde inferior.hsides - Sólo los bordes superior e inferior.vsides - Sólo los lados derecho e izquierdo.lhs - Sólo el lado izquierdo.rhs - Sólo el lado derecho.box - Los cuatro lados.border - Los cuatro lados. |
rules="valor" |
Indica que bordes de la tabla serán
visibles:
none - Ninguna línea de
división. Este es el valor por defecto.groups - Sólo aparecerán líneas
de división entre grupos de filas y grupos de columnas.
Más tarde veremos como se definen estos grupos.cols - Sólo aparecerán líneas
de división entre filas.rows - Sólo aparecerán líneas
de división entre columnas.all - Se mostrarán todas las líneas. |
Atributos opcionales para <tr> |
|
align="posición" |
Indica la posición horizontal del texto
dentro de las celdas de la fila. Sus posibles valores son:
left - Alineado a la izquierda.
Este es el valor por defecto.right - Alineado a la derecha.center - Centrado.justify - Justificado a izquierda y derecha.char - Alineado alrededor de un caracter. Por
defecto es la coma decimal, aunque puede especificarse con el atributo char |
valign="posición" |
Indica la posición vertical del texto dentro
de las celdas de la fila. Sus posibles valores son:
top - Alineado con la parte
superior de la celda.middle - Centrado verticalmente dentro de la celda.
Este es el valor por defecto.bottom - Alineado con la parte inferior de la celda.baseline - La primera línea de cada celda de
la fila es común. |
char="carácter" |
Indica el carácter alrededor del cual se alineará el texto de las celdas. Por defecto es la coma decimal. |
charoff="longitud" |
Establece la distancia entre el borde y el caracter de alineación. |
Atributos opcionales para <td>
y <th> |
|
align="posición" |
Indica la posición horizontal y vertical del
texto dentro de las celdas como se explica en atributos
de <tr>La alineación horizontal por defecto de <th>
es center |
char="carácter" |
Lo mismo que para los atributos
de <tr>. |
rowspan="número" |
Se utiliza para fusionar celdas de la misma columna
o de la misma fila respectivamente indicando el número de celdas
a fusionar. Por ejemplo, en esta tabla la celda de más arriba “Atributos
opcionales para <td> y <th>” tiene un valor colspan="2" |
horario.htm que creaste en la Actividad 9.12.comun, troncal
y optativa para la etiqueta <td>
con colores de fondo y de fuente distintos, y asígnalos a las
celdas de las asignaturas según corresponda.Es posible agrupar las filas para facilitar la comprensión de
estas, sobretodo cuando se trata de tablas largas. Podemos definir un
encabezado de tabla, un pie de tabla y una o varias secciones del
cuerpo de la tabla, todos ellos con una o más filas. Esto
permite, por ejemplo, que a la hora de imprimir una tabla larga los
encabezados y pies de página se repitan en cada hoja impresa.
Otra posibilidad es utilizar dentro de la etiqueta <table>
el atributo rules="groups" que
vimos más arriba, con lo que sólo dibujará
líneas de separación entre los distintos grupos de filas.
Las etiquetas son:
<thead> - para el encabezado de la
tabla<tfoot> - para el pie de la tabla<tbody> - para las secciones del
cuerpo de la tablaLa etiqueta de cierre es opcional, aunque, como siempre, es recomendable usarlas.
Si decidimos usar estas etiquetas para agrupar filas el orden correcto es el anterior, es decir, primero definiremos el encabezado y el pie de página y a continuación las secciones. De no ser así el navegador podría no interpretarlo correctamente.
Los atributos opcionales para estas etiquetas son los mismos que
para <tr>
El agrupamiento en columnas es más potente que el que acabamos de ver para las filas. Nos permite, entre otras cosas, definir individualmente las propiedades de cada columna, estableciendo por ejemplo la anchura o la alineación.
La etiqueta para definir un grupo de columnas es <colgroup>,
y dentro de esta podemos definir subgrupos de una o más columnas
con la etiqueta <col>.
Los atributos opcionales para estas etiquetas son los mismos que
para <tr>, y dos
propios de estas que son span para indicar el
número de columnas y width para
indicar la anchura de las columnas.
Estos grupos de columnas han de definirse inmediatamente
después de la etiqueta <table> y
antes de definir las filas.
Veamos un cuadro resumen de todo esto con ejemplos de su uso.
| Etiqueta | Explicación |
|---|---|
<colgroup> |
Define un grupo de columnas No necesita etiqueta de cierre aunque sí es recomendable |
<col> |
Define las propiedades de una o varias columnas
dentro de un grupo. Los atributos definidos para esta etiqueta prevalecen sobre los de <colgroup> |
| Atributos opdionales | |
align="valor" |
Igual que para <tr> |
span="numero" |
Indica el número de columnas |
width="anchura" |
Indica la anchura de las columnas. Se puede indicar
de tres maneras:
|
A continuación tienes varios ejemplos.
| Ejemplo | Explicación |
|---|---|
<colgroup span="15" width="40"> |
La tabla tendrá 15 columnas de 40 píxels de anchura cada una |
<colgroup align="center"> |
La tabla tendrá 3 columnas que ocuparán cada una un 10% del total y otra columna que ocupará el resto. El contenido de todas ellas estará centrado. |
<colgroup span="2" width="50"> |
El primer grupo de columnas tiene dos de 50 píxels cada una. El resto del espacio lo divide en 6 partes, (3*+1*+2*=6 partes) y asigna 3 partes a la tercera columna, una parte a la cuarta y 2 a la quinta. |
horario.htm Listas |
Marcos ![]() |