www.000webhost.com



Introduction au XHTML

Le HTML utilisé jusqu'à présent pour le développement des applications web devient moins approprié pour servir de base aux développements qui se profilent, basés sur la structure de plus en plus présente du XML.

Le XHTML (eXtensible HyperText Markup Language)

marque une transition entre les développements actuels et à venir. Il représente une reformulation du HTML 4 vers un langage XML plus portable et syntaxiquement plus rigoureux.

Le XHTML 1.0 supporte l'ensemble des balises du HTML 4

, bien que certaines seront abandonnées dans les futures versions du XHTML. Afin de maintenir une correspondance entre HTML et XHTML, les trois DTD (Document Type Definition) correspondant au HTML 4 (Strict, Transitional, Frameset) sont utilisables pour le XHTML.

Principes du XHTML

Le XHTML répond à une exigence de mise en forme des documents HTML.

La mise en place de ce nouveau standard a pour but de rendre compatible les documents de type HTML avec la norme d'écriture des documents XML.

Les principales différences entre HTML et XHTML sont syntaxiques. Si vous maîtrisez le HTML, le XHTML ne représente qu'une suite de bonnes pratiques à appliquer lorsque vous créez vos pages.

Les règles à appliquer pour valider du XHTML sont :

* La fermeture de toutes les balises

* Ne pas laisser de balises se chevaucher

* Ecrire en minuscule le nom des balises et des attributs

* Ne pas laisser d'attributs présents sans valeur associée

* Encadrer les valeurs appliquées aux attributs par des guillemets

* Spécifier le standard utilisé pour l'écriture de la page : balise DOCTYPE

* Ne plus utiliser les balises et les attributs obsolètes

» Fermeture des balises :

Fermer une balise correspond à écrire le tag de fermeture approprié à cette balise. Certaines balises nécéssite déjà ce tag de fermeture (<a href...> ... </a> par exemple).


Cependant un certains nombre de balises ne nécessite pas de tag de fermeture :

<br>

<hr>

<img>

<input>

...

Ainsi lorque vous voulez écrire un retour à la ligne vous devez fermer la balise : <br></br>

Cette syntaxe est correcte, mais la syntaxe la plus courante pour fermer une balise est la suivante : <br /> (espace, slash "/" et ">")

nous venant tout droit du xml. La syntaxe " />" (respecter l'espace) est donc celle à appliquer.

Exemples :

<input type="button" value="ok" />

<img src="MonImage.gif" />

<hr width="100%" />

...

» Chevauchement des balises :

Cette nécessité vient à nouveau d'une cohérence syntaxique avec le XML. L'imbrication des tags doit être respectée : l'ordre de fermeture des tags doit s'effectuer dans l'ordre inverse de celui d'ouverture. En d'autres termes, le dernier tag ouvert doit être le premier fermé.

Exemples :

<b><u>mauvaise écriture des tags</b></u>

<u><b>écriture correcte des tags</b></u>

<b><u>écriture correcte des tags</u></b>

» Ecriture des balises et attributs en minuscules :

Il n'est plus possible en XHTML d'écrire par exemple :

<INPUT TYPE="hidden" name="test">

Il faut écrire les mots input et type en minuscule et toujours penser à bien écrire la fermeture de la balise:

<input type="hidden" name="test" />

» Spécifier la valeur de chaque attribut :

Certaines des balises HTML possèdent des attributs sans valeurs. La balise <td> utilise par exemple l'attribut nowrap qui empêche les retours à la ligne dans la cellule. les attributs checked ou disabled ne prennent pas non plus de valeur.

Pour répondre à cette norme il faut donner la valeur correspondant au nom de l'attribut.

Une zone de texte non éditable s'écrira alors :

<input type="text" disabled="disabled" value="Texte définitif">

Toute valeur associée à un attribut doit être encadrée par des guillemets pour être valable. Il n'est donc pas possible d'écrire explicitement des guillemets dans la valeur d'un attribut. Pour contourner ce problème il suffit d'écrire le code HTML associé (Tableau des caractères HTML).

» Utiliser la balise <!doctype> :

La balise doctype définie le type de standard employé pour le balisage de la page. Trois variantes existent :

- DTD Strict

- DTD Transitionnal

- DTD Frameset



précédent