Qu’est-ce que DOCTYPE?

  • Qu’est-ce que DOCTYPE et pourquoi je veux l’utiliser?
  • Quels sont les différents DOCTYPE que je peux utiliser?
  • Quelle est la différence entre le mode standard et le mode bizarre, et quelles sont les particularités que je pourrais rencontrer avec des DOCTYPE de configuration différente?

Enfin, quel est le bon DOCTYPE que je devrais utiliser?

    Fondamentalement, le DOCTYPE décrit le code HTML qui sera utilisé dans votre page.

    Les navigateurs utilisent également le DOCTYPE pour déterminer comment rendre une page. Ne pas inclure un DOCTYPE ou inclure un DOCTYPE incorrect peut déclencher le mode quirks. Le premier est que le mode bizarrerie d’Internet Explorer est très différent du mode quirks de Firefox (et des autres navigateurs), ce qui signifie que vous aurez beaucoup plus de mal à vous assurer que votre page fonctionne de manière cohérente dans tous les navigateurs. mode que vous le ferez si elles sont rendues en mode standard.

    Wikipedia présente un résumé plus détaillé des différences de rendu lors de l’utilisation de plusieurs DOCTYPE . XHTML est activé par certains doctypes, et il y a pas mal de débats sur l’utilisation de XHTML qui est bien abordé dans XHTML – mythes et réalité .

    Il existe des différences subtiles entre les différents doctypes de rendu “plaintes de standards”, tels que le doctype HTML5 ( , avant HTML5 uniquement connu sous le nom de “skinype doctype” qui ne déclenche pas le rendu standardisé dans les anciens navigateurs) et autres DOCTYPE celui-ci pour HTML 4.01 transitionnel:

      

    Le DOCTYPE indique à l’agent utilisateur consommateur (navigateurs Web, robots Web, outils de validation) quel type de document est le fichier. Son utilisation garantit que le consommateur parsing correctement le code HTML tel que vous le vouliez.

    Il existe plusieurs DOCTYPES différents pour HTML, XHTML et Framesets et chacun de ces modes possède deux modes Ssortingct et Transitional. Ssortingct dit que votre balisage utilise exactement les normes définies. Voir la page DTD du W3C pour plus de détails.

    Quirksmode est fondamentalement la méthode de mise en page des jours de guerre du navigateur lorsque les normes étaient beaucoup moins respectées et définies. Généralement, une page en mode standard, qui est valide, sera mise en page de manière plus cohérente sur les différents navigateurs, mais certaines fonctionnalités peuvent vous manquer. L’une de ces fonctionnalités est l’atsortingbut cible de la balise d’ancrage. Le site Quirksmode est une excellente ressource pour ces différences.

    Une dernière pensée est que le nouveau standard HTML5 propose d’utiliser un DOCTYPE très simple:

    L’utilisation de ce DOCTYPE est un moyen compatible avant de spécifier que vos pages sont en mode standard et HTML. C’est la méthode utilisée par Google et qui est relativement facile à mémoriser. Je recommande d’utiliser ce DOCTYPE sauf si vous envisagez d’utiliser XHTML.

    Un doctype définit la version de HTML / XHTML utilisée par votre document. Vous souhaitez utiliser un doctype pour que, lorsque vous exécutez votre code via des validateurs, les validateurs sachent quelle version de HTML / XHTML vérifier. Cette page fournit un bon aperçu:

    N’oubliez pas d’append un doctype

    Les doctypes courants que vous pouvez utiliser sont listés ici:

    Liste recommandée des DTD

    Le type de document à utiliser dépend du code que vous utilisez, mais pour avoir une idée, essayez d’exécuter votre code via le validateur du W3C et utilisez le menu déroulant Type de document du menu “Plus d’options” pour essayer différents types de documents. .

    Service de validation de balisage W3C

    En HTML (y compris XHTML) tel qu’utilisé sur les pages Web, DOCTYPE est une chaîne qui déclenche l’un des rares modes de navigation (mode quirks, mode standard, mode presque standard), en fonction de l’orthographe exacte du DOCTYPE. Vous souhaitez l’utiliser pour sélectionner un mode de navigation adapté à votre page.

    Formellement, dans SGML et XML, une déclaration DOCTYPE est une référence à une définition de type de document (DTD), qui spécifie les règles de syntaxe formelle du langage de balisage. Aucun navigateur n’a jamais utilisé de DTD pour quoi que ce soit ou même y a accédé. Cependant, ils sont utilisés par les validateurs de balisage SGML et XML tels que le validateur de balisage W3C , sauf en mode HTML5. Par conséquent, le choix de DOCTYPE détermine le fonctionnement d’un validateur si le document lui est soumis. Cependant, le mode de fonctionnement du validateur peut également être sélectionné dans son interface utilisateur. (Les processeurs SGML et XML peuvent également utiliser les DOCTYPE de différentes manières, mais la question semble se limiter au contexte HTML, aux navigateurs Web et aux logiciels étroitement liés.)

    Il n’y a pas de liste de DOCTYPE faisant autorité. Chaque spécification HTML ou brouillon définit ses propres DOCTYPE ou DOCTYPE. L’ensemble des DOCTYPE reconnus par les navigateurs lors de la sélection du mode varie selon le navigateur. En pratique, il n’y a pas de raison d’utiliser un DOCTYPE autre que tel que défini dans HTML5 , bien que HTML5 liste également quelques «DOCTYPE hérités». Vous pouvez utiliser ce DOCTYPE si vous voulez le mode standard (recommandé pour les nouvelles pages) et n’utiliser aucun DOCTYPE si vous voulez un mode bizarre (dont vous pourriez avoir besoin pour les anciennes pages).

    Le «mode standard» désigne généralement le mode de fonctionnement où un navigateur suit au mieux les spécifications HTML, CSS, DOM et autres. Cela ne signifie généralement pas une conformité totale. Le «mode Quirks» est différent dans les différents navigateurs, mais généralement, il s’agit d’une tentative d’imiter le comportement de très anciens navigateurs comme IE 5. Le but est de faire fonctionner les anciennes pages, en supposant qu’elles peuvent compter sur des fonctionnalités et des bogues. les anciens navigateurs. Voir la description Que se passe-t-il en mode Quirks? Notez qu’il existe un concept plutôt différent et plus limité du «mode bizarre» dans HTML5, qui ressemble beaucoup au document intitulé Quirks Mode Living Standard .

    Un problème typique est que les largeurs des éléments sont calculées différemment en mode quirks et en mode standard. Cela signifie que la mise en page d’une page peut être plus ou moins modifiée ou même totalement gâchée si une page conçue pour fonctionner en mode quirks est visualisée en mode standard (ou vice versa).

    Vous devez donc utiliser pour les nouvelles pages et conserver les DOCTYPE (le cas échéant) que vous avez utilisés pour les anciennes pages.

    Cependant, le mode quirks signifie, dans certains navigateurs, que de nombreuses nouvelles fonctionnalités de CSS ne sont pas sockets en charge. Cela signifie que si vous souhaitez améliorer une ancienne page avec une fonctionnalité CSS3, il peut être nécessaire de passer à un DOCTYPE qui déclenche le mode standard. Dans ce cas, vous devez examiner et tester la page pour voir si elle fonctionnera en mode standard.

    Les doctypes indiquent au navigateur dans quelle langue la page est écrite, que ce soit HTML ou XHTML. Par exemple,

      

    Dites au navigateur de rendre la page en HTML4 ssortingct . Les anciens navigateurs affichaient des pages de manière incorrecte et les nouveaux navigateurs simulaient donc les erreurs des anciens navigateurs lorsqu’ils trouvaient un ancien type de document.

    Aujourd’hui, vous devez utiliser au moins HTML4 ou mieux XHTML.

    Un blog sur doctypes est Fix Your Site avec le bon DOCTYPE! (de A List Apart ).

    Tout d’abord, il n’y a pas un seul doctype à utiliser, mais la plupart des concepteurs essaient de le faire fonctionner dans XHTML 1.0 Ssortingct.

    Un doctype n’est rien de plus qu’une déclaration des balises que vous pouvez utiliser dans votre HTML (bien que les navigateurs puissent utiliser plus ou moins que ce qui est défini) Vous pouvez réellement ouvrir le fichier doctype et commencer à lire ( XHTML 1.0 Ssortingct )

    Si vous ne spécifiez pas de doctype, le navigateur fera de son mieux pour deviner, mais pas toujours le bon type.

    Le mode Quirks est simplement une technique utilisée par les navigateurs pour être rétrocompatible, un bon exemple de mode bizarre est la façon dont IE rend les boîtes

    Sur le Web, un doctype ne fait rien d’autre que dire au navigateur si vous voulez des standards, presque des standards ou des quirks.

    Les modifications du mode quirks dépendent du navigateur: Firefox, Opera, Safari et Chrome implémentent un nombre limité de bizarreries, comme la suppression de l’espace pour les descendeurs de texte dans le code tel que

    (solution: td img { vertical-align:bottom; } ). IE, d’autre part, revient au moteur de rendu dans IE5.5. Cela signifie que vous ne pourrez utiliser aucune des nouvelles fonctionnalités implémentées depuis 2000.

    Pour déclencher le mode standard, je suggère d’utiliser le doctype HTML5, , car c’est le plus facile à retenir.

    Un doctype est un document qui décrit comment le contenu d’un document de type xhtml peut ressembler (comme une page Web). Note: ceci ne définit que la syntaxe de cette page, le rendu de la page n’est PAS défini par la DTD!

    Par exemple, un doctype pourrait définir l’apparence de la

    – quels atsortingbuts elle accepte et quels valeurs / types de valeurs sont acceptés pour chaque atsortingbut. Considérez-le comme un lexique pour votre page Web actuelle.

    Wikipedia a une page informative sur les différents Doctypes couramment utilisés. Attention, rien ne vous empêche de créer votre propre doctype. Les chances sont toutefois que le navigateur ne sache probablement pas comment rendre votre document.

    La DTD à utiliser dépend de ce que vous allez écrire. XHTML a une DTD entièrement différente de celle du HTML, par exemple.

    La déclaration n’est pas une balise HTML; C’est une instruction au navigateur Web concernant la version de HTML dans laquelle la page est écrite.

    Dans HTML 4.01, la déclaration fait référence à une DTD, car HTML 4.01 était basé sur SGML. La DTD spécifie les règles pour le langage de balisage, afin que les navigateurs rendent le contenu correctement.