Qu'est-ce que c'est ?
Un
DOCTYPE est en fait, en français, une
déclaration du type de document.
Vous savez que vous écrivez votre page Web en HTML ou en XHTML.
Eh bien maintenant sachez qu'il existe plusieurs versions de l'HTML ou de l'XHTML.
Le
DOCTYPE permet justement de spécifier, à l'attention du navigateur, la version de l'HTML ou de l'XHTML utilisée par les pages Web que vous avez créées.
Il se présente sous cette forme :
Code : HTML | <!DOCTYPE HTML PUBLIC "type_de_HTML" "adresse_de_DTD">
|
où
- "type_de_HTML" est la version utilisée de l'HTML.
- "adresse_de_DTD" est l'url de la DTD utilisée. Une DTD fixe les règles du langage que vous utilisez.
Dans ce tutoriel, nous allons nous intéresser plus particulièrement au cas de l'XHTML, puisque c'est le balisage enseigné dans les cours présents sur ce site.
Les différentes versions du XHTML sont :
- XHTML 1.0 Strict
- XHTML 1.0 Transitional
- XHTML 1.0 Frameset
- XHTML 1.1
Nous allons les étudier plus en détail dans ce tutoriel.
À quoi ça sert ?
De votre point de vue et celui du validateur
La plupart du temps, et pour la plupart d'entre vous, ça sert à valider vos pages Web.
Voici l'adresse du
validateur. Si elle n'est pas dans vos favoris, il va falloir y penser, et vite !
Le validateur n'accepte de valider vos pages que si le
DOCTYPE est présent en haut de la page. Et si elle est valide, vous recevrez le (Oh ! Joie !) message très connu :
C'est un exemple. Vous savez pertinemment que le XHTML 1.0 Strict n'est pas la seule forme de l'XHTML possible...
Ça semble logique quand on y réfléchit...
Comment voulez-vous que ce sacré validateur puisse essayer de valider votre page s'il ne connaît pas la version que vous utilisez ?
Du point de vue du navigateur
Le
DOCTYPE n'est pris en compte que par les navigateurs les plus récents (comme Mozilla Firefox, Opera 7, IE5 sur Mac ou IE6 sur Windows).
À la base, il doit servir, lorsque le navigateur rencontre une instruction « illégale », c'est-à-dire non reconnue par le
DOCTYPE, à ignorer l'instruction.
Sans
DOCTYPE, le navigateur tente de donner un sens à l'instruction dite « illégale », en cherchant dans d'autres versions une équivalence, ou tout simplement en reconnaissant des habitudes de développeurs...
C'est pour cette raison, qu'en XHTML, lorsque l'on tape <img src="mon_image.jpg" alt="Mon image"> (notez l'absence de slash de fin), le navigateur comprend qu'il s'agit de l'équivalence de la balise <img /> en XHTML !
D'habitude, le navigateur ne s'en sort pas trop mal, car il n'y a pas eu de grand changement d'une version de l'HTML à une autre, bien que le résultat puisse légèrement différer.
