RAW HTWL
 
Référence du HTML 3.2

sommaire général


Cette page est un mémento succinct des tags du HTML 3.2. Pour plus de détails, on se reportera par exemples aux spécifications du W3C.


1. Structure d'un document HTML 3.2

 
N'oubliez pas le <!DOCTYPE ...> : il identifie la version du langage que vous utilisez. Par exemple, le HTML 4 n'est pas une extension du HTML 3.2 car certains tags ont disparu ou ont été modifiés. Les bons navigateurs se caleront sur l'information donnée par le <!DOCTYPE ...> pour savoir comment traiter la page convenablement…

Voici le squelette d'un document écrit en HTML 3.2 :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">

<HTML>

    <HEAD>

        <TITLE> ... </TITLE>

        ...

    </HEAD>

    <BODY>

        ...

    </BODY>

</HTML>



2. Le tag <HEAD>

<HEAD> ... </HEAD>

Le tag <HEAD> peut contenir les tags suivants : <TITLE>, <STYLE>, <SCRIPT>, <ISINDEX>, <BASE>, <META> et <LINK>.


2.1. Le tag <TITLE>

<TITLE> ... </TITLE>

La présence de ce tag est obligatoire.


2.2. Le tag <STYLE>

<STYLE> <!-- ... --> </STYLE>

Paramètres : TYPE.

Sert à définir les feuilles de styles.

Pour accéder à une feuille de style, on utilise le paramètre CLASS dans les tags courants.

 
Ne pas oublier de mettre la définition entre commentaires <!-- ... --> pour les navigateurs qui ne gèrent pas les feuilles de styles.


2.3. Le tag <SCRIPT>

<SCRIPT LANGUAGE="..."> <!-- ... --> </SCRIPT>

Paramètres : LANGUAGE, SRC.

Sert à intégrer du code d'un autre langage (notamment du JavaScript) dans un document HTML.

 
Ne pas oublier de mettre le code entre commentaires <!-- ... --> pour les navigateurs qui ne lisent pas le JavaScript dans le texte. C'est une attention qui ne coûte pas grand chose, et pourtant combien de webmasters y pensent ?

 
Dans le même ordre d'idée, penser à inclure une zone de tag <NOSCRIPT>.


2.4. Le tag <ISINDEX>

<ISINDEX PROMPT="...">

Paramètres : PROMPT, HREF.


2.5. Le tag <BASE>

<BASE HREF="...">

Paramètres : HREF, TARGET.


2.6. Le tag <META>

<META HTTP-EQUIV="..." CONTENT="...">

<META NAME="..." CONTENT="...">

Paramètres : HTTP-EQUIV, NAME, CONTENT.

Entre autres couples paramètres/valeurs on pourra utiliser les suivants :
  • HTTP-EQUIV="refresh" CONTENT="nth sec [ ; URL=url ] "
  • HTTP-EQUIV="expires" CONTENT="weekday, day month year time timezone"
  • HTTP-EQUIV="content-type" CONTENT="mime-type [ ; charset=charset ] " (généralement CONTENT="text/html; charset=iso-8859-1")
  • NAME="keywords" CONTENT="..."
  • NAME="description" CONTENT="..."
  • NAME="copyright" CONTENT="..."
  • NAME="distribution" CONTENT="..."
  • NAME="moved" CONTENT="url"
  • NAME="robots" CONTENT="none|nofollow|all|noindex"
  • NAME="generator" CONTENT="..."
  • NAME="language" CONTENT="..."
  • NAME="text" CONTENT="..."


2.7. Le tag <LINK>

<LINK ... >

Paramètres : REL, REV, HREF, TITLE.


3. Le tag <BODY>

<BODY> ... </BODY>

Paramètres : BGCOLOR, BACKGROUND, TEXT, LINK, VLINK, ALINK.

Le tag <BODY> peut contenir les tags suivants : <H1>, <H2>, <H3>, <H4>, <H5>, <H6>, <ADDRESS>, plus tous les tags de blocs et tous les tags de styles.


3.1. Headers <H1> <H2> <H3> <H4> <H5> <H6>

<H1> ... </H1>

Paramètres : ALIGN.


3.2. Le tag <ADDRESS>

<ADDRESS> ... </ADDRESS>


4. Les tags de blocs

Les tags de blocs forcent une coupure de paragraphe.


4.1. Le tag <P>

<P> ... </P>

Paramètres : ALIGN.


4.2. Le tag <UL>

<UL> ... </UL>

Paramètres : TYPE.

Peut contenir les tags <LH> et <LI>.


4.3. Le tag <OL>

<OL> ... </OL>

Paramètres : TYPE, START.

Peut contenir les tags <LH> et <LI>.


4.4. Le tag <DL>

<DL> ... </DL>

Paramètres : TYPE, START.

Peut contenir les tags <LH>, <DT> et <DD>.


4.5. Le tag <PRE>

<PRE> ... </PRE>

Ce tag remplace les tags <XMP>, <LISTING> et <PLAINTEXT>.

Paramètres : WIDTH.


4.6. Le tag <DIV>

<DIV ALIGN="..."> ... </DIV>

Paramètres : ALIGN.


4.7. Le tag <CENTER>

<CENTER> ... </CENTER>


4.8. Le tag <BLOCKQUOTE>

<BLOCKQUOTE> ... </BLOCKQUOTE>


4.9. Le tag <FORM>

<FORM ACTION="url" METHOD="post|get"> ... </FORM>

Paramètres : ACTION="url", METHOD="post|get", ENCTYPE, TARGET, NAME.

Contient les tags suivants :
  • <INPUT NAME="..." [ TYPE="text | password | radio | checkbox | hidden | file | submit | reset | image | button" ] [ VALUE="..." ] [ SIZE="..." ] [ MAXLENGTH="..." ] [ CHECKED ] [ SRC="url" ] [ ALIGN="right | center | left" ]>
  • <SELECT NAME="..." [ SIZE="..." ] [ MULTIPLE ]>
  • <OPTION [ VALUE="..." ] [ SELECTED ]>
  • <TEXTAREA NAME="..." [ COLS="..." ] [ ROWS="..." ] [ WRAP="virtual | physical | off | soft | hard" ]> ... </TEXTAREA>


4.10. Le tag <ISINDEX>

<ISINDEX PROMPT="...">

Paramètres : PROMPT, HREF.

Peut remplacer <FORM> pour des formulaires simplissimes (juste une zone de texte).


4.11. Le tag <HR>

<HR>

Paramètres : ALIGN, NOSHADE, SIZE, WIDTH.


4.12. Le tag <TABLE>

<TABLE> ... </TABLE>

Paramètres : ALIGN, BORDER, CELLSPACING, CELLPADDING, WIDTH, HEIGHT.

Peut contenir le tag <CAPTION [ ALIGN="top | bottom" ]> ... </CAPTION>, mais doit surtout contenir des tags <TR [ ALIGN="..." ] [ VALIGN="..." ] [ BGCOLOR="..." ] [ HEIGHT="..." ]> ... </TR>, qui eux mêmes doivent contenir des tags <TD [ ALIGN="..." ] [ VALIGN="..." ] [ NOWRAP ] [ COLSPAN="..." ] [ ROWSPAN="..." ] [ BGCOLOR="..." ] [ WIDTH="..." ] [ HEIGHT="..." ]> ... </TD>.
Le tag <TH> s'emploie de le même manière que <TD>.

 
Le tag <TABLE> réserve bien des surprises en pratique. Voir la page concernant les pièges en HTML.


5. Les tags de styles

Les tags de styles ne forcent pas une coupure de paragraphe.
Ils peuvent contenir d'autres tags de styles, mais aucun tag de bloc.


5.1. Styles physiques

<TT> ... </TT>

<I> ... </I>

<B> ... </B>

<U> ... </U>

<STRIKE> ... </STRIKE>

<BIG> ... </BIG>

<SMALL> ... </SMALL>

<SUB> ... </SUB>

<SUP> ... </SUP>


5.2. Styles logiques

<EM> ... </EM>

<STRONG> ... </STRONG>

<DFN> ... </DFN>

<CODE> ... </CODE>

<SAMP> ... </SAMP>

<KBD> ... </KBD>

<VAR> ... </VAR>

<CITE> ... </CITE>


5.3. Le tag <A> (Anchor)

<A HREF="..." [ TARGET="..." ]> ... </A>

<A NAME="..."> ... </A>

Paramètres : HREF ou NAME, REL, REV, TITLE, TARGET.


5.4. Le tag <IMG>

<IMG SRC="..." ... >

Paramètres : SRC, ALT, ALIGN, WIDTH, HEIGHT, BORDER, HSPACE, VSPACE, USEMAP, ISMAP, NAME.

Pour utiliser une « image map » on pourra définir avant l'usage du paramètre USEMAP="#xxx" une carte côté client avec le tag <MAP NAME="xxx"> ... </MAP>, tag à mettre où on veut — par exemple dans la partie <HEAD> — et qui doit contenir des tags <AREA [ SHAPE="rect | circle | poly" ] COORDS="x,y,..." [ NOHREF ] [ HREF="..." ] [ ALT="..." ] [ TARGET="..." ]>.


5.5. Le tag <APPLET>

<APPLET ... > ... </APPLET>

Ce tag fait bel et bien partie du HTML 3.2.

Paramètres : CODE, CODEBASE, WIDTH, HEIGHT, ALT, NAME, ALIGN, HSPACE, VSPACE.

<APPLET> peut contenir des tags <PARAM NAME="..." VALUE="...">.


5.6. Le tag <EMBED>

<EMBED SRC="..." ... >

Bizarrement ce tag ne fait pas partie du HTML 3.2.

Paramètres : SRC, TYPE="mime", STANDBY, NAME, WIDTH, HEIGHT

 
Pour prévenir les cas où le poste client n'accepte pas ce tag, utiliser <NOEMBED> ... </NOEMBED>.


5.7. Le tag <FONT>

<FONT ... > ... </FONT>

Paramètres : SIZE, COLOR.

 
On peut quasiment toujours utiliser aussi le paramètre FACE, mais ce dernier ne fait pas partie du HTML 3.2 ! Et comme en HTML 4 le tag <FONT> disparaît purement et simplement, j'ai bien peur que le paramètre FACE soit en pratique une totale aberration…


5.8. Le tag <BR>

<BR>

Paramètres : CLEAR="left|right|all".


6. Le tag <NOSCRIPT>

<NOSCRIPT> ... </NOSCRIPT>

Inclut du code qui ne sera lu que dans le cas où JavaScript est désactivé.

 
Quoique très pratique (et comme tout ce qui est intelligent, extrêmement peu employé en pratique), ce tag ne fait pas partie de la version 3.2 du HTML…


7. Les frames

Elles ne font absolument pas partie du HTML 3.2.


7.1. Le tag <FRAMESET>

<FRAMESET ... > ... </FRAMESET>

Paramètres : COLS, ROWS, FRAMEBORDER="yes|no", BORDER, BORDERCOLOR, FRAMESPACING.

On utilise ce tag à l'intérieur du tag <HEAD>. Et quand on l'utilise, il n'y a plus lieu de mettre un tag <BODY> dans le reste du document (sauf bien sûr dans une zone <NOFRAMES>).

Le tag <FRAMESET> définit les frames de la page.


7.2. Le tag <NOFRAMES>

<NOFRAMES ... > ... </NOFRAMES>

Inclut du code qui ne sera lu que dans le cas où les frames sont désactivées. C'est là qu'on mettra un <BODY> au cas où le navigateur client n'accepte pas les frames.


7.3. Le tag <FRAME>

<FRAME ... > ... </FRAME>

Paramètres : NAME, SRC, SCROLLING="yes|no|auto", MARGINWIDTH, MARGINHEIGHT, NORESIZE, FRAMEBORDER="yes|no", BORDER, BORDERCOLOR, FRAMESPACING.


8. Les tags propriétaires

On rencontre parfois des tags, notamment <BASEFONT>, <BGSOUND>, <BLINK>, <HYPE>, <IFRAME>, <LAYER>, <MARQUEE>, <MULTICOL>, <SPACER>, <WBR>, etc. qui ne font pas partie du HTML 3.2 standard, mais sont des inventions de Netscape ou Microsoft pour « optimiser » les sites pour leurs navigateurs respectifs.

Le mieux vis-à-vis de ces tags est de s'en passer purement et simplement.


9. Poursuivre la navigation

retour au sommaire général