Frage

  • Was ist DOCTYPE und warum will ich es verwenden?
  • Was sind die verschiedenen DOCTYPEs sind kann ich verwenden?
  • Was ist der Unterschied zwischen den Standards und Quirks-Modus, und was sind einige Macken Ich laufe in kann mit unterschiedlich DOCTYPEs eingestellt?

Schließlich, was ist die richtige DOCTYPE, die ich verwenden sollte?

War es hilfreich?

Lösung

Im Grunde beschreibt die DOCTYPE die HTML, die in Ihrer Seite verwendet wird.

Browser verwendet auch die DOCTYPE zu bestimmen, wie eine Seite zu machen. Ohne eine DOCTYPE oder darunter eine falsche DOCTYPE kann Quirks-Modus auslösen. Der Kicker ist hier, dass Quirks-Modus in Internet Explorer von Quirks-Modus in Firefox ist ganz anders (und anderer Browser), was bedeutet, dass Sie eine haben werden viel schwieriger Job versuchen, Ihre Seite, um sicherzustellen, arbeiten konsequent in allen Browser, wenn Seiten im Quirks-Modus gerendert, als Sie, wenn sie im Standardmodus wiedergegeben werden.

Wikipedia hat eine vertiefende Zusammenfassung der Unterschiede beim Rendering, wenn verschiedene DOCTYPEs mit . XHTML wird durch bestimmte doctypes aktiviert ist, und es ist ziemlich viel Diskussion über die Verwendung von XHTML, die gut in abgedeckt ist XHTML -. Mythen und Realität

Es gibt subtile Unterschiede zwischen den verschiedenen „Standards Beschwerde“ Rendering doctypes, wie die HTML5 Doctype (<!DOCTYPE html> vor HTML5 nur als „skinny Doctype“ bekannt, die nicht standardisierte Rendering in älteren Browsern auslösen) und andere DOCTYPEs wie diese ein für HTML 4.01 Übergang:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

Andere Tipps

Die DOCTYPE sagt den verzehrenden User-Agenten (Web-Browser, Web-Crawler, Validierungs-Tools), welche Art von Dokument der Datei. Mit sichergestellt, dass der Verbraucher analysiert richtig HTML, wie Sie es bestimmt.

Es gibt verschiedene DOCTYPEs für HTML, XHTML und Framesets und jeder von ihnen hat zwei Modi Strict und Transitional. Strikte sagt, dass Ihr Markup die definierten Standards genau verwendet. Siehe W3C DTDs Seite für weitere Details.

Quirksmode ist im Grunde die Layout-Methode aus den Browser-Kriege Zeiten, in denen die Standards waren viel weniger respektieren und definiert. Im allgemeinen wird eine Standardmodus Seite, die gültig ist, wird Layout mehr konsequent in verschiedenen Browsern, kann aber bestimmte Funktionen fehlen, die Sie benötigen. Ein solcher Merkmale ist das Zielattribut des Anker-Tag. Die Quirksmode Website ist eine großartige Ressource für diese Unterschiede.

Ein letzter Gedanke ist, dass der neue HTML5-Standard schlägt eine sehr einfache DOCTYPE mit:

  

<!DOCTYPE html>

Dieses DOCTYPE verwenden ist eine rückwärtskompatible Weise festlegen, dass Ihre Seiten im Standardmodus sind, und HTML sind. Dies ist die Methode, die Google verwendet, und ist relativ leicht zu merken. Ich empfehle diese DOCTYPE es sei denn, Sie planen, XHTML zu verwenden.

Ein Doctype definiert, welche Version von HTML / XHTML Dokument verwendet. Sie möchte einen Doctype verwenden, so dass, wenn Sie Ihren Code durch Validierer laufen, die Validatoren wissen, welche Version von HTML / XHTML gegen zu überprüfen. Diese Seite bietet einen guten Überblick:

Vergessen Sie nicht, einen Doctype

hinzufügen

Gemeinsame doctypes Sie sind hier aufgeführt verwenden können:

Empfohlene Liste von DTDs

Welche doctype sollten Sie gehen mit dem Code hängt davon ab, die Sie verwenden, aber eine Vorstellung zu bekommen, versuchen Sie den Code durch den W3C-Validator ausgeführt und verwenden Sie die Dokumenttyp Dropdown-Menü in der „Weitere Optionen“, um zu versuchen verschiedene doctypes aus.

W3C Markup Validation Service

In HTML (einschließlich XHTML), wie auf Webseiten verwendet wird, ist DOCTYPE eine Zeichenfolge, die eine des wenige Browser-Modi (Quirks-Modus, Standardmodus, fast Standards-Modus), abhängig von der genauen Schreibweise der DOCTYPE auslöst. Sie wollen es verwenden, um einen Browser-Modus zu wählen, die Ihre Seite am besten entspricht.

Formal in SGML und XML, eine DOCTYPE-Deklaration ist ein Verweis auf eine Document Type Definition (DTD), die die formalen Syntaxregeln der Auszeichnungssprache angibt. Kein Browser hat jemals DTDs für etwas oder sogar zugegriffen sie verwendet werden. Sie werden jedoch von SGML und XML-Markup-Validatoren wie der W3C Markup Validator , außer im HTML5-Modus verwendet. Daher bestimmt die Wahl der DOCTYPE wie ein Validator arbeitet, wenn das Dokument, um es eingereicht wird. Jedoch kann der Validator Betriebsart auch in seiner Benutzeroberfläche ausgewählt werden. (SGML und XML-Prozessoren DOCTYPEs in verschiedenen anderen Arten verwenden können, auch, aber die Frage gemeint ist offenbar auf den HTML-Kontext beschränkt werden und auf dem Web-Browser und eng verwandte Software.)

Es gibt keine verbindliche Liste von DOCTYPEs. Jede HTML-Spezifikation oder Entwurf legt seine eigene DOCTYPE oder DOCTYPEs. Der Satz von DOCTYPEs von Browsern erkannt, wenn Modus Auswahl von Browser variiert. In der Praxis gibt es keinen Grund, ein DOCTYPE andere als <DOCTYPE html> zu verwenden in definierten HTML5 , obwohl HTML5 auch ein paar „Legacy DOCTYPEs“ auflistet. Sie können diesen DOCTYPE verwenden, wenn Sie Standards-Modus möchten (für neue Seiten empfohlen) und keine DOCTYPE verwenden, wenn Sie Quirksmodus wollen (die Sie für Legacy-Seiten benötigen).

„Standard-Modus“ bezeichnet im Allgemeinen die Betriebsart, wo ein Browser HTML folgt, CSS, DOM und andere Spezifikationen, die gut er kann. Es bedeutet nicht, in der Regel in voller Übereinstimmung. „Quirks-Modus“ unterscheidet sich in verschiedenen Browsern, aber in der Regel bedeutet, dass es einen Versuch, das Verhalten von sehr alten Browsern wie IE imitieren 5. Der Zweck alte Seiten zu halten ist, arbeitet unter der Annahme, dass sie sich auf Funktionen und Fehlern in dem berufen alter Browser. Siehe die Beschreibung Was im Quirks-Modus geschieht? Beachten Sie, dass es eine eher anders, begrenztere Konzept des „Quirks-Modus“ in HTML5, das ähnelt das Dokument Quirks Mode Lebensstandard namens .

Ein typisches Problem ist, dass Elementbreiten unterschiedlich im Quirks-Modus berechnet werden und im Standardmodus. Dies bedeutet, dass das Layout einer Seite mehr oder weniger können geändert oder sogar total versaut, wenn eine Seite im Quirks-Modus arbeiten ausgelegt ist, im Standardmodus (oder umgekehrt) angesehen.

So Sie <!DOCTYPE html> für neue Seiten verwendet werden soll und halten was DOCTYPE (falls vorhanden) Sie haben für alte Seiten verwendet wird.

Allerdings Quirks-Modus bedeutet, in einigen Browsern, dass viele neue Features von CSS werden nicht unterstützt. Das bedeutet, wenn Sie eine alte Seite mit einigen CSS3-Funktion verbessern möchten, ist es auch notwendig sein, kann auf eine DOCTYPE zu schalten, die Standards-Modus auslöst. In einem solchen Fall müssen Sie die Seite überprüfen und zu testen, um zu sehen, ob es im Standardmodus ausgeführt wird.

Doctypes dem Browser mitteilen, in welcher Sprache die Seite geschrieben wird, sei es HTML oder XHTML. Zum Beispiel:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
    "http://www.w3.org/TR/html4/strict.dtd">

gibt den Browser die Seite als HTML4 strict zu machen. Ältere Browser-Seiten verwendeten falsch zu machen und somit neueren Browser simulieren Fehler der älteren Browser, wenn sie einen alten Doctype finden.

Heute sollten Sie mindestens HTML4 oder besser XHTML verwenden.

Ein Blog-Eintrag über doctypes ist Fix Sie Ihre Website mit der richtigen DOCTYPE! (von A List Apart ).

Zu allererst gibt es niemand Doctype Sie verwenden sollten, aber die meisten Designer versuchen, es 1.0 Strict in XHTML arbeiten.

Ein Doctype nichts ist mehr als eine Erklärung dessen, was Tags können Sie in Ihrem HTML verwenden (obwohl der Browser mehr oder weniger als verwenden können, was definiert ist) Sie können tatsächlich die Doctype-Datei öffnen und zu lesen beginnen ( XHTML 1.0 Strict )

Wenn Sie keinen Doctype angeben, wird der Browser seine besten versuchen zu erraten, aber nicht immer trifft den richtigen Typ.

Quirks-Modus nur eine Technik, die von Browsern verwendet wird, ist rückwärtskompatibel zu sein, ein gutes Beispiel für Quirks-Modus ist, wie IE macht Boxen

Auf dem Netz ein Doctype tut nichts anderes als die Brower sagen, wenn Sie Standards wollen, fast Standards oder Quirks-Modus.

Was Modus ändert sich in Macken, hängt von der Browser: Firefox, Opera, Safari und Chrome eine begrenzte Anzahl an Macken implementieren, wie der Platz für Text Unterlängen in Code wie <table><tr><td><img></td></tr></table> Entfernung (Lösung: td img { vertical-align:bottom; }). IE, auf der anderen Seite kehrt auf das Rendering-Engine in IE5.5. Das bedeutet, dass Sie nicht in der Lage sein zu verwenden jeder der neuen Features seit dem Jahr 2000 umgesetzt werden.

Standardmodus auszulösen, schlage ich vor, den HTML5 Doctype, <doctype html> verwenden, da es die einfachste ist zu erinnern.

Ein Doctype ist ein Dokument, das beschreibt, wie der Inhalt eines xhtml ähnlichen Dokumente wie (wie eine Webseite) aussehen kann. Hinweis: diese nur die Syntax der Seite definiert, wird die Darstellung der Seite nicht durch die DTD definiert

Zum Beispiel könnte ein Doctype definieren, wie der <table>-Tag aussehen kann - welche Attribute es akzeptiert, und welche Werte / valuetypes wird für jedes Attribut akzeptiert. Betrachten Sie es als ein Lexikon für Ihre aktuelle Webseite.

Wikipedia eine informative Seite über die verschiedenen Doctypes hat, die im allgemeinen Gebrauch sind. Wohlgemerkt - es gibt nichts hindert Sie daran, Ihre eigenen Doctype zu schaffen. Die Chancen sind aber, dass der Browser nicht wissen wahrscheinlich, wie Ihr Dokument zu machen.

Welche DTD zu verwenden, hängt davon ab, was Sie schreiben wollen. XHTML hat eine ganz andere DTD als HTML, zum Beispiel.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top