Tatsächlich ist XHTML 1.0 in zwei Typen unterteilt (drei, wenn Frameset DOCTYPE enthalten ist, was in diesem Artikel nicht behandelt wird): Übergangs- und strikte DOCTYPEs. Und HTML 4.01 hat auch die gleiche Dokumentdeklaration. Wenn es heute um die Förderung von Webstandards geht, sagen die Befürworter von Webstandards oft, dass XHTML strenger als HTML sei. In gewissem Sinne ist das natürlich auch so, denn es erfordert beispielsweise, dass alle Tags geschlossen und alle Attribute in Anführungszeichen gesetzt werden. Tatsächlich ist XHTML 1.0 jedoch in zwei Typen unterteilt (drei, wenn Frameset DOCTYPE enthalten ist, was in diesem Artikel nicht behandelt wird): Übergangs- und strikte DOCTYPEs. Und HTML 4.01 hat auch die gleiche Dokumentdeklaration. Die Bedeutung lässt sich aus dem wörtlichen Namen erkennen: Transitional DOCTYPEs gelten nur für den Übergang von der alten zur neuen Ära, und Strict DOCTYPEs ist die Standarddokumentdeklaration, die für die Konstruktion von HTML 4.01 und XHTML 1.0 gilt. Übergangs-DOCTYPE wird im Allgemeinen verwendet, da der Code zu viele alte Schreibmethoden enthält und eine vollständige Konvertierung auf einmal zu Strict DOCTYPE schwierig ist. Ihr Ziel sollte jedoch ein strikter DOCTYPE sein. Es ermutigt und zwingt Sie manchmal sogar dazu, Struktur von Präsentation zu trennen und Präsentationscode in CSS zu schreiben. HTML 4-Dokumenttypdefinition:
Die Verwendung von Strict DOCTYPE bietet den zusätzlichen Vorteil, dass Browser angewiesen werden, die Seite in ihrem strengsten und (bis zu einem gewissen Grad) standardkonformsten Modus darzustellen. Tommy Olsson erläutert die Vorteile einer guten Verwendung von Strict in Zehn Fragen an Tommy Olsson von der Web Standards Group:
Für diejenigen, die sich mit Webstandards und der richtigen, semantischen Struktur nicht auskennen, ist es wichtig, den Unterschied zwischen Übergangs-DOCTYPES und strikten DOCTYPES zu erkennen. Eine ausführlichere Liste finden Sie unter: XHTML: Unterschiede zwischen striktem und vorübergehendem Format, Vergleich strikter und vorübergehender XHTML- und XHTML1.0-Elementattribute nach DTD. Für diejenigen, die bereit sind, zu Strict zu wechseln, gibt es zwischen den beiden einige Unterschiede, die wahrscheinlich dazu führen, dass Entwickler Fehler machen, auf die ich als Nächstes eingehen werde. In strengen DOCTYPES nicht unterstützte Tags: center font iframe srike u In strengen DOCTYPES nicht unterstützte Attribute: align (unterstützt von table-related: col, colgroup, tbody, td, tfoot, th, thead und tr) language background bgcolor border (unterstützt von table) height (unterstützt von img und object) hspace name (unterstützt in HTML 4.01 Strict, nicht unterstützt von form und img in XHTML 1.0 Strict) noshade nowrap target text, link, vlink und alink vspace width (unterstützt von img, object, table, col und colgroup). Unterschiede bei den Inhaltsmodellen: Das Inhaltsmodell eines Elementtyps beschreibt, welche Art von Instanzen dieses Elementtyps enthalten sein können. In dieser Hinsicht besteht der größte Unterschied zwischen den beiden Dokumentdeklarationen darin, dass Blockquote-, Body- und Formularelemente nur Elemente auf Blockebene enthalten können, wie z. B.: Text und Bilder dürfen nicht direkt im Body enthalten sein, sie müssen durch Elemente auf Blockebene, wie z. B. p oder div, enthalten sein. Eingabeelemente können nicht direkt die nächste Ebene von Formularelementen sein. Text innerhalb von Blockquote-Elementen muss durch Elemente auf Blockebene, wie z. B. p oder div, enthalten sein. Überlassen Sie die gesamte Darstellung CSS und halten Sie sich an strenge Standards. Beim Übergang zu strengen DOCTYPEs ist es viel effektiver zu verstehen, was jedes Element tut, als zu wissen, wie jedes Element aussieht. Denken Sie zuerst über Struktur und Semantik nach und kümmern Sie sich dann um die Leistung. |
<<: Detaillierte Erklärung zum Einfügen gängiger Nginx-Befehle in Shell-Skripte
>>: CSS-Navigationsleistenmenü mit kleinem Dreieck-Implementierungscode
Die Standard-Firewall von CentOS7 ist nicht iptab...
Inhaltsverzeichnis Überblick Definieren von Metho...
Vuex ist ein speziell für Vue.js-Anwendungen entw...
Heute stelle ich zwei HTML-Tags vor, die ich nich...
Was soll ich tun, wenn Linux nicht alle Befehle u...
Um den blinkenden Hintergrundfarbeffekt zu erziele...
Vorwort Eine der Funktionen eines Interceptors be...
Heute habe ich zufällig einem Freund beim Umzug s...
Inhaltsverzeichnis Vorwort 1. Lokale Portweiterle...
Inhaltsverzeichnis Hbase-Installation und -Konfig...
In diesem Artikel wird der spezifische Code der E...
Firewall Eine Firewall ist eine Reihe von Regeln....
Nachdem der Artikel „Dies wird eine Revolution“ er...
Die neue offizielle Website ist online, aber die ...
Karten-Tags müssen paarweise vorkommen, d. h. <...