Cours disponibles
(Nouvelles versions seulement)
- 1ère page
- Couleur
- Hyperliens
- Images
- MA PAGE
- Listes
- Tableaux
|
Le p'tit cours HTML - Leçon 7 : Les tables |
Bonjour <%=nomCid%>. Seconde étape vers ton premier site - et attention, pas une petite étape ! - roulement de tambour... les TABLEAUX.
Au menu de cette leçon:
|
|
Objectif : Maîtriser les tables (tables, tableaux : c'est blanc bonnet et choucroute garnie ;) !)
Un tableau se définit comme un arrangement de lignes et de colonnes. Certes. En quoi ceci est-il utile dans le processus de création d'un site web ? Tout simplement parce que en jouant sur le nombre de lignes et de colonnes, leur taille, l'alignement du texte ou de l'image à l'intérieur des cellules etc. on peut optimiser la présentation d'une page. ASP-PHP utilise les tableaux, la page d'accueil de ma zone rédac' aussi... sans oublier la page de cette leçon (ne pas se priver donc d'en visualiser le code source :) !)
Quelques précisions qui ne sont peut-être pas inutiles
| Terme |
Définition |
| Ligne |
Succession de données disposées horizontalement dans le tableau. |
| Colonne |
Succession... verticale :). |
| Cellule |
Intersection d'une ligne et d'une colonne. |
| Bordures |
Lignes entourant le tableau et ses cellules. |
| Intitulés |
Facultatifs, ils apparaissent dans la première ligne du tableau et servent à désigner le contenu des colonnes. |
| Titre / Légende |
Ce texte apparaissant en principe au-dessus / au-dessous du tableau sert à en indiquer le contenu. |
|
|
Structure de base
<TABLE> </TABLE> indique au navigateur le début et la fin d'une table. Le tableau est ensuite décrit ligne par ligne à l'aide des balises : <TR> </TR> (Table Row). Pour créer des cellules, il faut à l'intérieur de chaque ligne définir des colonnes; deux cas se présentent alors :
- on veut définir une série de cellules d'en-tête (cellules servant de titre aux colonnes, je le rappelle) : on utilise alors à l'intérieur de la ligne la paire <TH> </TH> (Table Head) autant de fois qu'il y a de colonnes...
- on veut définir une série de cellules de données (qui pourront contenir du texte, des images, une table...) : on utilise alors à l'intérieur de la ligne la paire <TD> </TD> (Table Data) autant de fois qu'il y a de colonnes..
Ainsi, la structure de base d'une table de 4 lignes et de cinq colonnes - dont la première ligne affiche les titres des colonnes - sera la suivante:
<TABLE>
<TR>
<TH> </TH>
<TH> </TH>
<TH> </TH>
<TH> </TH>
<TH> </TH>
</TR>
<TR>
<TD> </TD>
<TD> </TD>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD> </TD>
<TD> </TD>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD> </TD>
<TD> </TD>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
</TABLE>
Remplir le tableau
Rien de plus simple : il suffit, à l'intérieur des couples <TD> </TD> de taper le texte (avec la mise en forme désirée) ou d'insérer des images comme nous l'avons vu à la leçon 4, le tout à l'endroit désiré du tableau. Un examen du code source de cette leçon permettra d'éclairer davantage le sujet.
|
|
Bordures et quadrillage
Il peut être nécessaire que soient visibles bordure et quadrillage du tableau. Les attributs <BORDER="x">, <CELLSPACING="x"> et <CELLPADDING="x"> (où x est une valeur en pixels) sont là pour permettre de jouer sur l'existence et l'épaisseur de la bordure et du quadrillage.
Utilisation des attributs
| Attribut |
Utilisation |
| <BORDER="x"> |
Le simple ajout de cet attribut, sans spécification de valeur, fait apparaître une bordure et un quadrillage dont la taille est à la discrétion du navigateur. Si cet attribut n'est pas présent, la bordure n'est pas visible mais le tableau est affiché avec l'espacement qui lui est réservé par le navigateur. En fixant la valeur à 0, on supprime bordure et quadrillage.
| <CELLSPACING="x"> |
Sert à définir l'espace entre les cellules du tableau. Sa valeur par défaut est fixée à 2. |
| <CELLPADDING="x"> |
Indique la distance minimale entre le bord d'une cellule et son contenu. Sa valeur par défaut est de 1. |
|
De façon évidente, le tableau le plus compact possible est obtenu à l'aide du code <TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0">
Hauteur et largeur d'un tableau
Utilisation des attributs
| Attribut |
Utilisation |
| <WIDTH="x"> |
On peut spécifier une taille absolue en pixels ou au contraire, pour une plus grande adaptabilité à toutes les résolutions d'écran, choisir de spécifier une valeur en pourcentage (50% de la fenêtre de navigation par exemple). |
| <HEIGHT="x"> |
Même fonctionnement que pour l'attribut précédent. A noter, l'ordre d'utilisation de ces attributs importe peu, et on peut mélanger valeur absolue et pourcentage (par exemple hauteur fixée à 300 pixels et largeur à 80% de la fenêtre de navigation). |
Par défaut, les dimensions d'un tableau sont fonction de son contenu et/ou de la taille de la fenêtre. Les attributs <WIDTH="x"> et <HEIGHT="x"> (où x est une valeur en pixels ou un pourcentage) servent à définir hauteur et largeur d'une table.
|
|
Utilisation des attributs
| Attribut |
Utilisation |
| <ALIGN="LEFT|CENTER|RIGHT"> |
Permet d'aligner le contenu de la cellule concernée. |
| <VALIGN="TOP|MIDDLE|BOTTOM"> |
Permet d'aligner verticalement (en haut, au centre ou en bas) le contenu de la cellule concernée. |
| <WIDTH="x"> |
Même fonctionnement que dans la balise <TABLE>. Si on définit la largeur d'une cellule, elle définit la largeur pour la colonne entière. |
| <HEIGHT="x"> |
Même fonctionnement que dans la balise <TABLE>. Si on définit la hauteur d'une cellule, elle définit la hauteur de toute la ligne. |
| <ROWSPAN="x"> |
Permet de réunir (fusionner) x lignes. Les habitués des feuilles de calcul excel comprendront tout de suite... si ce n'est pas clair, une étude attentive du code source permettra, je l'espère, de clarifier la chose. |
| <COLSPAN="x"> |
Fait fusionner x colonnes. |
Comme tous les attributs "internes" (qui ont priorité sur la structure externe), la spécification d'un alignement pour une cellule donnée n'est valable que pour cette cellule. Attention lors de la définition d'une taille pour les lignes et/ou colonnes : la somme des tailles absolues des colonnes/lignes ne doit pas dépasser celle définie pour le tableau dans sa globalité. En cas de conflit, c'est la taille globale qui prévaudra, le navigateur calculant automatiquement celle des lignes/colonnes pour qu'elles s'affichent dans le tableau. Il n'est pas utile de spécifier toutes les tailles (je rappelle qu'on peut mélanger des spécifications absolues et des pourcentages), on peut se contenter de fixer une valeur particulière pour la ou les colonnes (lignes) les plus significatives et laisser le soin au navigateur de répartir l'espace restant entre le reste des colonnes (lignes), dans la limite de la taille définie pour le tableau. Si vous souhaitez plus d'exemples d'utilisation des attributs <COLSPAN="x"> et <ROWSPAN="x">, signalez-le moi.
|
|
|
Quatre attributs non cités de la balise <TABLE> ont été utilisés dans cette leçon: débusque les et essaie de voir à quoi ils servent. Certaines tables de cette page sont légendées ou titrées... essaie de comprendre comment on peut arriver à ce résultat. Que se passe-t-il si on choisit d'utiliser la valeur "left" ou "right" dans la balise <TABLE ALIGN="LEFT/RIGHT"> ?
Comment se sert-on d'une image comme fond de table ?
|
|
Haut de la page
Phoebe 31/05/2001 www.ASP-PHP.net
|