On m'a demandé aujourd'hui si j'ai une compréhension détaillée de la balise <! Doctype>? , J'ai été stupéfait pendant un moment, parce que je l'ai vu au début que j'ai suggéré d'utiliser le DTD de transition XHTML sur W3CSchool, puis j'ai mis en danger le type de document HTML de Dreamweaver à XHTML 1.0 Transitional par défaut. Il a été utilisé pour acquis jusqu'à présent. Les gens sont vraiment la chose paresseuse. Plus ils grandissent, plus ils deviennent paresseux. Beaucoup de choses sont inconsciemment tenues pour acquises. Depuis qu'on m'a demandé, je suis allé trouver des informations et je l'ai résumé. Prenons-le comme une note ~~
Définition de <! Doctype> :La déclaration <! Doctype> est située à la position la plus frontale dans le document, avant la balise <html>. Cette balise indique au navigateur quelle spécification HTML ou XHTML à utiliser pour le document.
Cette balise peut déclarer trois types de DTD, représentant des versions strictes, des versions de transition et des versions HTML basées sur le cadre. (Si les balises du document ne suivent pas le DTD spécifié par la déclaration Doctype, ce document peut ne pas être affiché correctement dans le navigateur en plus de ne pas passer la vérification du code.)
Utilisation de <! Doctype> :<!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Strict//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd> Analysis: In the above declaration, the root element of the document is declared as html, which is defined in DTD with the public identifier defined as - // w3c // dtd xhtml 1.0 strict // en. Le navigateur comprendra comment trouver un DTD qui correspond à cet identifiant public. Si cela n'est pas trouvé, le navigateur utilisera l'URL après l'identifiant public comme l'emplacement pour rechercher le DTD.
-: indique que le nom de l'organisation n'est pas enregistré. L'Internet Engineering Task Force (IETF) et la World Wide Web Association (W3C) ne sont pas des organisations ISO enregistrées.
+ est la valeur par défaut, indiquant que le nom de l'organisation est enregistré.
DTD: Spécifie la classe de texte public, c'est-à-dire le type d'objet référencé. La valeur par défaut est dtd.
HTML: Spécifie une description du texte public, c'est-à-dire un nom descriptif unique pour le texte public référencé. Le numéro de version peut être inclus plus tard. La valeur par défaut est HTML.
URL: spécifie l'emplacement de l'objet référencé.
Strict: exclure tous les attributs et éléments représentatifs que les experts du W3C souhaitent éliminer.
Trois types de documents HTML:HTML 4.01 Spécifie trois types de documents: strict, transitionnel et cadre.
a) Si vous avez besoin d'une majoration propre pour éviter la confusion dans la présentation, utilisez le type DTD strict HTML:
<! Doctype html public - // w3c // dtd html 4.01 // en http://www.w3.org/tr/html4/strict.dtd>
b) La DTD de transition peut contenir des attributs de rendu et des éléments que W3C prévoit de se déplacer dans des feuilles de style. Si l'utilisateur utilise un navigateur qui ne prend pas en charge les feuilles de style en cascade (CSS) afin que vous deviez utiliser les attributs de rendu de HTML, utilisez le type DTD de transition:
<! Doctype html public - // w3c // dtd html 4.01 transitional // en http://www.w3.org/tr/html4/loose.dtd>
c) Frameset DTD est utilisé pour les documents avec des cadres. À l'exception de l'élément Frameset qui remplace l'élément corporel, Frameset DTD est équivalent au DTD transitionnel:
<! Doctype html public - // w3c // dtd html 4.01 frameset // en http://www.w3.org/tr/html4/frameset.dtd>
Trois types de documents XML :XHTML 1.0 Spécifie trois types de documents XML: strict, transitionnel et trame.
a) Si vous avez besoin d'une majoration propre pour éviter la confusion dans la présentation, utilisez le type DTD strict XHTML:
<! Doctype html public - // w3c // dtd xhtml 1.0 strict // en http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd>
b) La DTD de transition peut contenir des attributs de rendu et des éléments que W3C prévoit de se déplacer dans des feuilles de style. Si l'utilisateur utilise un navigateur qui ne prend pas en charge les feuilles de style en cascade (CSS) afin que vous deviez utiliser les attributs de rendu de HTML, utilisez le type DTD de transition:
<! Doctype html public - // w3c // dtd xhtml 1.0 transitional // en http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd>
c) Frameset DTD est utilisé pour les documents avec des cadres. À l'exception de l'élément Frameset qui remplace l'élément corporel, Frameset DTD est équivalent au DTD transitionnel:
<! Doctype html public - // w3c // dtd xhtml 1.0 frameset // en http://www.w3.org/tr/xhtml1/dtd/xhtml1-frameset.dtd>
Sélectionnez le doctype correct :Afin d'obtenir la déclaration Doctype correcte, la clé consiste à faire correspondre aux normes suivis des normes suivie du document.
Par exemple, en supposant que le document suit la norme stricte XHTML 1.0, la déclaration doctype du document doit se référer au DTD correspondant.
D'un autre côté, il est inapproprié si la déclaration Doctype spécifie XHTML DTD, mais le document contient des balises HTML à l'ancienne; De même, il est également inapproprié si la déclaration Doctype spécifie HTML DTD, mais le document contient des balises strictes XHTML 1.0.
Si aucune déclaration Doctype valide n'est spécifiée, la plupart des navigateurs utiliseront un DTD par défaut intégré. Dans ce cas, le navigateur utilisera le DTD intégré pour essayer d'afficher les balises que vous avez spécifiées (mais c'est ce que vous faites lorsque la page est trop mal écrite).
J'ai regardé JD.com, Taobao et Blog Park, et j'ai utilisé cela (j'ai toujours utilisé ceci):
<! Doctype html public - // w3c // dtd xhtml 1.0 transitional // en http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd>
Cependant, j'ai constaté que Baidu et Google utilisaient <! Doctype html>, donc j'ai soigneusement vérifié les informations et constaté que HTML5 était également utilisé directement, mais parce que HTML 5 n'est pas basé sur SGML, il n'y a donc pas besoin de faire DTD
Références, mais doctype est nécessaire pour réguler le comportement du navigateur (laissez les navigateurs courir comme ils le devraient).
Il est recommandé d'utiliser <! Doctype html> directement dans le futur. Si vous utilisez <! Doctype HTML>, le mode de compatibilité standard du navigateur sera activé. Dans le mode de compatibilité standard, il ne peut pas être garanti d'être compatible avec d'autres versions (avant IE6, l'ignorez simplement). Internet Explorer. Le comportement de rendu du document peut être différent du futur Internet Explorer, mais n'hésitez pas à l'utiliser ~~
Conseils :XHTML 1 est la XMlization de HTML 4.01, qui est un format qui n'est pas compatible en avant.
Le doctype dans HTML 4.01 nécessite des références à DTD car HTML 4.01 est basé sur SGML.
SGML spécifie un format standard pour intégrer des balises de description dans des documents et spécifie une méthode standard pour décrire la structure des documents. Le format HTML actuellement utilisé sur le Web est un document SGML qui utilise un ensemble fixe de balises.