Tableaux et multicolonnage |
<TBODY> ... </TBODY>
<THEAD> ... </THEAD>
<TFOOT> ... </TFOOT>
Cette technique de division des lignes de tableau en une zone d'en-tête (Header), de pied de tableau (foot) et en une ou plusieurs sections du corps permet de faire défiler indépendamment différentes zones d'un tableauExemple :
<TABLE BORDER>
<THEAD>
<TR><TD>...Informations de l'en-tête...</TD></TR>
</THEAD>
<TFOOT>
<TR><TD>...Informations du pied de tableau...</TD></TR>
</TFOOT>
<TBODY>
<TR>
<TD>...Première ligne, premier bloc...</TD>
<TD>...Première ligne, deuxième bloc...</TD></TR>
</TBODY>
<TBODY>
<TR>
<TD>...Deuxième ligne, premier bloc...</TD>
<TD>...Deuxième ligne, deuxième bloc...</TD></TR>
</TBODY>
</TABLE>
<TBODY ALIGN="CENTER|LEFT|RIGHT">
<TBODY BGCOLOR="?">
<TBODY VALIGN="BASELINE|BOTTOM|CENTER|TOP">
<THEAD ALIGN="CENTER|LEFT|RIGHT">
<THEAD BGCOLOR="?">
<THEAD VALIGN="BASELINE|BOTTOM|CENTER|TOP">
<TFOOT ALIGN="CENTER|LEFT|RIGHT">
<TFOOT BGCOLOR="?">
<TFOOT VALIGN="BASELINE|BOTTOM|CENTER|TOP">
Lorsqu'un tableau est affiché, le navigateur doit en analyser toutes les lignes pour compter le nombre de colonne, ce qui provoque des délais d'affichage qui sont pénalisants surtout pour de gros tableaux.
Ajouter à la balise <TABLE
> le nombre de colonne du tableau à l'aide de la fonction <COLS
> permet de réduire ce temps d'affichage.
Les colonnes d'un tableau peuvent alors être groupées, chaque groupement étant défini par la fonction <COLGROUP
>
<COLGROUP>
<COL>
<COL ALIGN="CENTER|LEFT|RIGHT">
<COL SPAN="?">
<COL VALIGN="BASELINE|BOTTOM|CENTER|TOP">
<COL WIDTH="?">
<COLGROUP ALIGN="CENTER|LEFT|RIGHT">
<COLGROUP SPAN="?">
<COLGROUP VALIGN="BASELINE|BOTTOM|CENTER|TOP">
<COLGROUP WIDTH="?">
<TABLE BORDER>
<COLGROUP SPAN="10" WIDTH="50" ALIGN="LEFT">
<COLGROUP SPAN="5" WIDTH="0*" ALIGN="RIGHT">
<THEAD>
<TR><TD>...Informations de l'en-tête...</TD></TR>
</THEAD>
<TFOOT>
<TR><TD>...Informations du pied de tableau...</TD></TR>
</TFOOT>
<TBODY>
<TR>
<TD>...Première ligne, premier bloc...</TD>
<TD>...Première ligne, deuxième bloc...</TD></TR>
</TBODY>
<TBODY>
<TR>
<TD>...Deuxième ligne, premier bloc...</TD>
<TD>...Deuxième ligne, deuxième bloc...</TD></TR>
</TBODY>
</TABLE>
Dans cet exemple, le tableau contient deux groupes de présentation, le premier comprenant 10 colonnes, le second 5.
La valeur par défaut pour chaque colonne du premier groupe est de 50 pixels, pour le second c'est le minimum optimal pour chaque colonne.
Les attributs suivants fonctionnent seulement lorsque l'attribut BORDER est présent, ils permettent d'ajuster l'affichage des bordures du tableau :
<FRAME="ABOVE">
<FRAME="BELOW">
<FRAME="BORDER">
<FRAME="BOX">
<FRAME="HSIDES">
<FRAME="INSIDES">
<FRAME="LHS">
<FRAME="RHS">
<FRAME="VOID">
<FRAME="VSIDES">
Les attributs suivants fonctionnent seulement lorsque l'attribut BORDER et les commandes <THEAD>, <TBODY> et <TFOOT> sont présents, ils permettent d'ajuster l'affichage interne de la bordure du tableau :
<RULES="ALL">
<RULES="COLS">
<RULES="GROUPS">
<RULES="NONE">
<RULES="ROWS">
<DATASRC="nom">
<TABLE BORDER WIDTH="75%" FRAME="HSIDES" RULES="COLS">
<THEAD>
<COLGROUP SPAN="4" ALIGN="LEFT" VALIGN="TOP">
</THEAD>
<TFOOT>7</TFOOT>
<TBODY>
<TR>
<TD><B>Head1</B></TD>
<TD>Item 1</TD>
<TD>Item 2</TD>
<TD>Item 3</TD>
</TR>
<TR>
<TD><B>Head2</B></TD>
<TD>Item 4</TD>
<TD>Item 5</TD>
<TD>Item 6</TD>
</TR>
<TR>
<TD><B>Head3</B></TD>
<TD>Item 7</TD>
<TD>Item 8</TD>
<TD>Item 9</TD>
</TR>
</TBODY>
</TABLE>
<MULTICOL> ... </MULTICOL>
COLS="?"
<MULTICOL>
et </MULTICOL>
.
Chaque colonne est délimitée par une balise <P
>.
GUTTER="?"
WIDTH="?|%"
<MULTICOL COLS="3" GUTTER="25" WIDTH="90%">
Texte1 <P>
Texte2 <P>
Texte3
</MULTICOL>