Formation :
HTML en détails
XHTML en détails
Les Balises

Une balise html est un mot clef encadré par une signe inférieur et supérieur <strong>. C'est un bout de code donnant des directives concernant le code qu'elle encadre. Il y une balise d'ouverture et une de fermeture et tout ce qui est entre elles se plie à la régle du mot clef qui les encadre. Par exemple <strong> ton texte </strong>. sera interprété par ton navigateur est 'ton texte' sera mis automatiquement en gras. Les balises servent également a compartimenter le code dans un "programme html".

01 - Balises de premier niveau :

Les balises de premier niveau sont les principales balises qui structurent une page XHTML. Elles sont indispensables pour réaliser le "code minimal" d'une page web.
Balise Description
<html>

Balise principale de toute page web.
On lui donne généralement 2 attributs :

puce xmlns : la liste des balises xhtml existantes (appelée espace de noms).
puce xml:lang : la langue utilisée sur votre page web. Utilisez "fr" pour un document en français.

En temps normal, votre balise <html> doit ressembler à ceci :

Code : HTML

1<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
2</html>
<head> En-tête de la page
<body> Corps de la page

Le code minimal d'une page XHTML :

1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
3<head>
4<title>Webinnov - Formation : HTML - XHTML - CSS2</title>
5<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
6</head>
7<body>
8</body>
9</html>
02 - Balises d'en-tête :

Balise Description
<link>

Cette balise permet d'indiquer certaines informations sur la page web.
On l'utilise le plus souvent pour inclure une feuille de style CSS, comme ceci :

Code : HTML

1<link rel="stylesheet" media="screen" type="text/css" title="Mon design" href="design.css" />

On peut aussi s'en servir pour 2-3 autres choses :

Code : HTML

1<!-- Page d'accueil du site -->
2<link rel="start" title="Accueil" href="index.html" />
3<!-- Page d'aide du site -->
4<link rel="help" title="Politique d'accessibilité" href="accessibilite.html" />
5<!-- Fil RSS du site -->
6<link rel="alternate" type="application/rss+xml" title="News de mon site" href="news.xml" />
7<!-- Icône du site (favicon) -->
8<link rel="shortcut icon" type="image/x-icon" href="favicon.ico" />

La favicon est une icône qui s'affiche généralement à gauche de l'adresse de votre site sur le navigateur de vos visiteurs. C'est un moyen de personnaliser un peu plus son site.
Quant au fil RSS, il s'agit d'une technique permettant à vos visiteurs de suivre l'actualité de votre site depuis un logiciel spécial (un navigateur tel que Firefox le fait d'ailleurs). En général on génère des fils RSS en PHP (si vous ne faites que du XHTML / CSS ça ne vous intéresse donc pas pour le moment).

<meta>

Cette balise permet de définir les propriétés de la page web.
On s'en sert pour une foule de choses. Voici quelques exemples pratiques :

Code : HTML

01<!-- Auteur de la page -->
02<meta name="author" content="David Laurent" />
03<!-- Description de la page -->
04<meta name="description" content="Webinnov" />
05<!-- Mots-clés de la page -->
06<meta name="keywords" content="formation, html, xhtml, css" />
07<!-- Adresse de contact -->
08<meta name="reply-to" content="contact@webinnov.fr" />
09<!-- Empêcher la mise en cache de la page par le navigateur -->
10<meta http-equiv="pragma" content="no-cache" />
11<!-- Table de caractères -->
12<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
13<!-- Rafraîchissement automatique au bout de 10 secondes -->
14<meta http-equiv="refresh" content="10; URL=http://www.webinnov.fr" />
<script>

Permet de placer un script.
On l'utilise souvent pour mettre du code Javascript :

Code : HTML

1<script type="text/javascript">
2/*Placer votre script ici */
3</script>
<style>

Permet de définir du code CSS pour la page.
On lui met l'attribut type="text/css".

Code : HTML

1<style type="text/css">
2/* Placer votre code CSS ici */
3</style>
<title>

Titre de la page web.

C'est probablement la balise la plus importante d'une page web. Choisissez bien votre titre car il a beaucoup d'importance pour les moteurs de recherche (ils donnent de l'importance aux mots qui se trouvent dans le titre).

Code : HTML

1<title>Webinnov - Formation : HTML - XHTML - CSS2</title>
03 - Balises de structuration du texte :

La différence entre la balise de type "Block" et de type "Inline" :

puce Les éléments de rendu "bloc" servent à distinguer les parties entières de texte, comme des titres, des paragraphes, des listes, des citations, etc. ;
puce Les éléments "en-ligne (Inline) sont prévus pour rester dans le texte pour l'enrichir (lien hypertexte, emphase, renforcement, etc.).

Balise Description Type
<acronym>

Sert à définir des acronymes, comme C.I.A.
On utilise généralement l'attribut title pour donner la définition de l'acronyme quand on pointe dessus :

Code : HTML

1<acronym title="Central Intelligence Agency">C.I.A.</acronym>
Inline
<blockquote>

Citation (longue)
Vous devez obligatoirement mettre une balise de paragraphe à l'intérieur du blockquote. Par exemple :

Code : HTML

1<blockquote>
2<p>
3Texte de la citation
4</p>
5</blockquote>
Block
<cite> Citation (moyenne) Inline
<q> Citation (courte) Inline
<sub> Mise en indice Inline
<sup> Mise en exposant Inline
<strong> Mise en valeur (forte)
Le texte est généralement mis en gras.
Inline
<em> Mise en valeur (faible)
Le texte est généralement mis en italique.
Inline
<h1> Titre de niveau 1 Block
<h2> Titre de niveau 2 Block
<h3> Titre de niveau 3 Block
<h4> Titre de niveau 4 Block
<h5> Titre de niveau 5 Block
<h6> Titre de niveau 6 Block
<img />

Insère une image.
Utilisez les attributs src (pour indiquer l'adresse de l'image) et alt (pour indiquer un texte de remplacement). Ces 2 attributs sont obligatoires. Exemple :

Code : HTML

1<img src="Templates/images/smiley.png" alt=":)" />
Inline
<a>

Lien hypertexte.
Indiquez l'url de destination grâce à l'attribut href :

Code : HTML

1<a href="autrepage.html">Rendez-vous sur l'autre page</a>
Inline
<br /> Retour à la ligne Inline
<p> Paragraphe Block
<hr /> Crée une ligne de séparation horizontale Block
<address> Permet d'indiquer une adresse, ou éventuellement l'auteur d'un document.
Le texte est généralement mis en italique.
Block
<del> Permer d'indiquer un texte qui a été supprimé.
Le texte est généralement barré.
Inline
<ins> Permet d'indiquer un texte qui a été inséré.
Le texte est généralement souligné.
Inline
<dfn> Permet d'indiquer une définition. Inline
<kbd> Permet d'indiquer un code que doit taper le visiteur. Inline
<pre> Le texte à l'intérieur de la balise <pre> sera affiché tel qu'il a été tapé dans le code (espaces et entrées compris). Une police de taille fixe est utilisée. Block
04 - Balises de liste :

Cette partie énumère toutes les balises XHTML permettant de créer des listes (listes à puces, listes numérotées, listes de définitions...)

Balise Description Type
<ul>

Liste à puces non numérotée. Vous devez mettre un <li></li> par élément de la liste.

Code : HTML

1<ul>
2<li>Un élément</li>
3<li>Un autre élément</li>
4</ul>
Block
<ol>

Liste à puces numérotée. Vous devez mettre un <li></li> par élément de la liste.

Code : HTML

1<ol>
2<li>Elément 1</li>
3<li>Elément 2</li>
4</ol>
Block
<li> Permet de créer un élément de liste.
Le type de la balise est particulier car elle n'est ni block ni inline. On dit qu'elle est de type list-item.
list-item
<dl>

Liste de définitions. Vous devez alterner chaque terme <dt> par sa définition <dd>.

Code : HTML

1<dl>
2<dt>Sortie de secours</dt>
3<dd>Permet de sortir d'un endroit en cas de danger</dd>
4<dt>Cinéma</dt>
5<dd>Lieu où l'on projete des films sur grand écran</dd>
6</dl>
Block
<dt> Terme à définir Block
<dd> Définition du terme Block
05 - Balises de tableau :

Balise Description Type
<table>

Délimite un tableau. Voici un exemple de tableau simple :

Code : HTML

01 <table>
02<caption>Inscription au club</caption>
03
04 <tr>
05<th>Nom</th>
06<th>Prénom</th>
07<th>Age</th>
08</tr>
09
10<tr>
11<td>Email</td>
12<td>Téléphone</td>
13<td>Fax</td>
14</tr>
15<tr>
16<td>Rue</td>
17<td>Code postal</td>
18<td>Ville</td>
19</tr>
20</table>
Block
<caption> Permet de donner un titre au tableau
...
<tr> Ligne de tableau
...
<th> Cellule d'en-tête du tableau (généralement mise en gras)
...
<td> Cellule du tableau ...
<thead> Balise non obligatoire permettant d'insérer l'en-tête du tableau.
Si vous choisissez d'utiliser <thead>, <tfoot> et <tbody>, vous devez les mettre dans l'ordre suivant dans votre code source :
1. <thead>
2. <tfoot>
3. <tbody>
...
<tbody> Balise non obligatoire permettant d'insérer le corps du tableau  
<tfoot> Balise non obligatoire permettant d'insérer le pied du tableau  
06 - Balises de formulaire :

Balise Description Type
<form> Délimite un formulaire.
Vous devrez généralement donner 2 attributs à la balise <form>
puce method : indique la méthode d'envoi du formulaire (get ou post). Si vous ne savez pas quoi utiliser, mettez post.
puce action : la page vers laquelle le visiteur doit être redirigé lorsqu'il a validé votre formulaire.
Block
<fieldset> Permet de regrouper plusieurs éléments d'un formulaire.
On l'utilise généralement dans de grands formulaires. Pour donner un titre à votre groupe, utilisez la balise <legend>
Block
<legend> Titre d'un groupe dans un formulaire.
A utiliser à l'intérieur d'un <fieldset>
Inline
<label> Titre d'un élément de formulaire.
Généralement, vous devrez mettre l'attribut for sur cette balise pour indiquer l'ID de l'élément auquel correspond le label.
Inline
<input />

Champ de formulaire.
Il existe de nombreux types de champs différents. Vous choisissez le type de champ que vous désirez grâce à l'attribut type :

Code : HTML

01 <!-- Zone de texte d'une ligne -->
02<input type="text" />
03<!-- Mot de passe (le texte est caché) -->
04 <input type="password" />
05<!-- Envoi de fichier -->
06<input type="file" />
07<!-- Case à cocher -->
08<input type="checkbox" />
09<!-- Bouton d'option -->
10<input type="radio" />
11<!-- Bouton -->
12<input type="button" />
13<!-- Bouton d'envoi -->
14<input type="submit" />
15<!-- Bouton de remise à zéro -->
16<input type="reset" />
17<!-- Champ caché -->
18<input type="hidden" />

Pensez à donner un nom à vos champs grâce à l'attribut name

Inline
<textarea> Zone de saisie multiligne.
Vous pouvez définir sa taille grâce aux attributs rows et cols (nombre de lignes et colonnes) ou bien le faire en CSS grâce aux propriétés width et height
Inline
<select>

Liste déroulante.
Utilisez la balise <option> pour créer chaque élément de la liste :

Code : HTML

1<select name="pays">
2<option value="france">France</option>
3<option value="espagne">Espagne</option>
4<option value="italie">Italie</option>
5</select>
Inline
<option> Element d'une liste déroulante Block
<optgroup> Groupe d'éléments d'une liste déroulante.
A utiliser dans le cas d'une grande liste déroulante.
Vous devez utiliser l'attribut label pour donner un nom au groupe.
Block
07 - Balises générique :

Les balises génériques sont des balises qui n'ont pas de sens sémantique.

En effet, toutes les autres balises XHTML ont un sens : <p> signifie "Paragraphe", <h2> signifie "Sous-titre" etc.

Parfois, on a besoin d'utiliser des balises génériques (aussi appelées balises universelles) car aucune des autres balises ne convient. On utilise le plus souvent des balises génériques pour construire son design.

Il y a 2 balises génériques : l'une est inline, l'autre est block.

Balise Description Type
<span> Balise générique de type inline Inline
<div> Balise générique de type block Block

Ces balises ont un intérêt uniquement si vous leur donnez un attribut class, id ou style :

puce class : indique le nom de la classe CSS à utiliser.
puce id : donne un nom à la balise. Ce nom doit être unique sur toute la page car il permet d'identifier la balise. Vous pouvez vous servir de l'ID pour de nombreuses choses, comme par exemple pour un lien vers une ancre, pour un style CSS de type ID, pour des manipulations en Javascript etc.
puce style : cette balise vous permet d'indiquer directement le code CSS à appliquer. Vous n'êtes donc pas obligés d'avoir une feuille de style à part, vous pouvez juste mettre directement les attributs CSS. Notez qu'il est préférable de ne pas utiliser cet attribut et de passer à la place par une feuille de style externe car cela rend votre site plus facile à mettre à jour par la suite.

Ces 3 attributs ne sont pas réservés aux balises génériques : vous pouvez aussi les mettre sur la plupart des autres balises sans aucun problème

Comme je vous l'ai dit au début de ce chapitre, il y a plusieurs balises que j'ai volontairement omises.

Vous l'aurez constaté, en XHTML tout est affaire de sens (on parle de sémantique). Ce qui compte, c'est d'utiliser la balise qui convient le mieux à chaque moment.
En théorie, on pourrait faire presque tout un site rien qu'avec les balises génériques <div> et <span> (en utilisant du CSS), mais votre site n'aurait aucun sens logique ! Or, respecter la logique de son code source est une chose que les webmasters considèrent comme fondamentale. Une page sémantique a plus de chances d'être mieux indexée dans Google qu'une page utilisant des balises inadaptées.

08 - Balises HTML-XHTML :

Lettre Balises Lettre Balises Lettre Balises
A <a></a>
<abbr></abbr>
<acronym></acronym>
<address></address>
<applet></applet>
<area>
K <kbd></kbd>
<keygen></keygen>
U <u></u>
<ul></ul>
V <var></var>
W <wbr></wbr>
X <xmp></xmp>
B <b></b>
<base>
<basefont></basefont>
<bdo></bdo>
<bgsound></bgsound>
<big></big>
<blink></blink>
<blockquote></blockquote>
<body></body>
<br/>
<button></button>
L <label></label>
<layer></layer>
<legend></legend>
<li></li>
<link>
<listing></listing>
Autres <!-- -->
<!DOCTYPE>
C <caption></caption>
<center></center>
<cite></cite>
<code></code>
<col>
<colgroup></colgroup>
<comment></comment>
M <map></map>
<marquee></marquee>
<menu></menu>
<meta>
<multicol></multicol>
 
D <dd></dd>
<del></del>
<dfn></dfn>
<dir></dir>
<div></div>
<dl></dl>
<dt></dt>
N <nobr></nobr>
<noembed></noembed>
<noframes></noframes>
O <object></object>
<ol></ol>
<optgroup></optgroup>
<option></option>
E <em></em>
<embed></embed>
P <p></p>
<param>
<plaintext></plaintext>
<pre></pre>
F <fieldset></fieldset>
<font></font>
<form></form>
<frame>
<frameset></frameset>
Q <q></q>
R <rt></rt>
<ruby></ruby>
H <h1></h1>
<h2></h2>
<h3></h3>
<h4></h4>
<h5></h5>
<h6></h6>
<head></head>
<hr>
<html>
<htmlarea>
S <s></s>
<samp></samp>
<script></script>
<select></select>
<small></small>
<spacer>
<span></span>
<strike></strike>
<strong></strong>
<style></style>
<sub></sub>
<sup></sup>
I <i></i>
<iframe></iframe>
<ilayer></ilayer>
<img>
<input>
<ins></ins>
<isindex>
T <table></table>
<tbody></tbody>
<td></td>
<textarea></textarea>
<tfoot></tfoot>
<th></th>
<thead></thead>
<title></title>
<tr></tr>
<tt></tt>

left home right