XHTML ? Différences entre HTML et XHTML Site Web en 10 leçons Ou alors les CSS Allons voir XML






Définition

XHTML est un langage balisé servant à l'écriture de pages du World Wide Web. XHTML est le successeur de HTML (de l'anglais HyperText Markup Language), XHTML respectant la syntaxe définie par XML, plus récente et plus simple que la syntaxe définie par SGML respectée par HTML.

Le nom XHTML

Comme de nombreux langages basés sur XML, XHTML commence par la lettre X, qui représente le mot extensible. Ainsi le premier document décrivant officiellement XHTML s'appelle XHTML™ 1.0 The Extensible HyperText Markup Language (« XHTML 1.0 Le langage de balisage hypertexte extensible »). C'est cependant l'abréviation XHTML qui est une marque du World Wide Web Consortium (W3C) et qui est seule utilisée dans les spécifications qui ont suivi la version 1.0.

XHTML, évolution de HTML

La première version de XHTML (1.0) est une simple reformulation de HTML 4 en XML 1.0. Il s'agit donc uniquement d'un changement de syntaxe, aucune fonctionnalité n'ayant été ajoutée ou retirée. La conversion d'un document en HTML 4.01 conforme en XHTML 1.0 peut se faire automatiquement sans perte d'information.

Conversion de HTML en XHTML

Cet exemple illustre les différences syntaxiques les plus courantes entre un document écrit en HTML 4 et en XHTML 1.0 :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<title>Exemple HTML 4</title>
<ul>
<li>Des éléments comme HTML, HEAD et BODY sont implicites, leurs balises ouvrantes et fermantes sont optionnelles.</li>
<li>De nombreuses balises fermantes sont optionnelles, notamment pour P (paragraphe) et LI (entrée de liste).
<li>Les noms d'éléments et d'attributs peuvent <EM Class="important">librement</Em> mélanger majuscules et minuscules.</li>
<li>Certains attributs ont une valeur par défaut <table border><tr><td>x</td></tr></table>.</li>
<li>Les guillemets ne sont pas <em class=important>toujours</em> obligatoires autour des valeurs d'attribut.</li>
<li>Les éléments vides n'ont pas de balise fermante <img src="i.png" alt="i">.</li>
</ul>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>
Exemple XHTML 1</title>
</head>
<body>

<ul>
<li>
Tous les éléments doivent être explicitement balisés.</li>
<li>
Les balises fermantes ne sont pas optionnelles.</li>
<li>
Les noms d'éléments et d'attributs <em class="important">doivent</em> être en minuscules.</li>
<li>
Tous les attributs doivent avoir une valeur explicite <table border="1"><tr><td>x</td></tr></table>.</li>
<li>
Les guillemets sont <em class="important">toujours</em> obligatoires autour des valeurs d'attribut.</li>
<li>
Les éléments vides doivent être fermés <img src="i.png" alt="i"/>.</li>
</ul>
</body>
</html>

Modularisation de XHTML

Les évolutions suivantes, qui ont abouti à XHTML 1.1, divisent le langage XHTML en modules, chacun regroupant un type de fonctionnalités. Cette division est conçue pour permettre à du matériel informatique aux capacités techniques limitées, notamment du matériel portable, de ne prendre en charge que des parties bien définies de XHTML.
Cette modularisation est accompagnée de l'abandon des fonctionnalités de HTML 4 pouvant être reprises dans des feuilles de style (typiquement en CSS) : les fonctionnalités définissant les détails de présentation d'une page Web. Le but de cette séparation entre contenu informatif et présentation est également de doter les pages en XHTML de la souplesse nécessaire pour permettre la consultation avec des appareils très divers, de l'ordinateur de bureau au téléphone portable.

Comme on dit chez moi: "ça c'est fait"

Cette page est une introduction nécessaire pour comprendre le concept général du XHTML; mais elle ne vous sera pas d'une grande utilité pour la suite!!!
Un grand merci au wikipedia pour ce document (version originale ici).

Les principales différences entre HTML et XHTML.