<!DOCTYPE>NN alle IE alle HTML 3.2  

<!DOCTYPE...>

HTML-End-Tag: Unzulässig  

DOCTYPE ist kein HTML-Element, sondern ein Kommentar im Format der Standard Generalized Markup Language (SGML) (wie auch so genannte HTML-Kommentare im Stil <!-- ... -->). Dieses Element muss das erste Element in einem Dokument sein (außer wie unten für XHTML-Dokumente angegeben) und immer vor dem <HTML>-Tag-Element stehen. Es teilt dem Browser die Document Type Definition (DTD) mit, die vom HTML-Quellcode befolgt wird. Alle Browser verfügen über einen Standarddokumententyp, der bestimmt, welche Elemente und Elementattribute vom Browser unterstützt werden (und für deren Unterstützung der Browser die erforderliche interne Programmierung besitzt, egal wie problematisch sie auch sein mag). Wenn Sie einen Dokumententyp für eine modernere DTP angeben, bedeutet dies nicht, dass ein älterer Browser auf einmal Elemente und Attribute unterstützen kann, für die er nicht kodiert ist. Umgekehrt dazu wird ein Browser bei Angabe einer restriktiven DTD nicht daran gehindert, rückwärtskompatible oder proprietäre Elemente und Attribute zu erkennen und zu unterstützen.

Ein DOCTYPE-Element enthält mehrere unbeschriftete Attributwerte, die Einzelheiten wie den Namen des äußersten Dokument-Tags (html für unsere Zwecke), die für die DTD verantwortliche Organisation, die Adresse der eigentlichen DTD-Datei (Systembezeichner genannt), einen Namen für die Definition (ggf. einschließlich Versionsnummer) usw. angeben. Der folgende DOCTYPE bezieht sich beispielsweise auf eine HTML 4.01 DTD mit allen veralteten Elemente und Attributen:

Im nächsten Beispiel wird die XHTML 1.1 DTD referenziert, die weder veraltete Elemente noch Frames enthält:

Darüber hinaus sollten Sie bei Angabe einer XHTML DTD auch eines der folgenden Anweisungs-Tags zur SGML-Verarbeitung vor der DOCTYPE-Deklaration einfügen:

Letztere Version enthält eine Einstellung für die Zeichensatzkodierung, die als Alternative auch in einem <META>-Tag angegeben werden kann. Für die HTML- und XHTML-Validatoren des W3C wird empfohlen, dass die Zeichenkodierung in einem Dokument auf eine dieser Methoden angegeben wird.

In den meisten Fällen dienen DOCTYPE-Elemente zur Erleichterung der Validierung des HTML-Quellcodes vor der Veröffentlichung im Web. Manche moderne Browser verhalten sich jedoch etwas anders, je nach dem Inhalt des DOCTYPE-Kommentars am Anfang des Dokuments. Sowohl IE 6 als auch Netscape 6 laufen in einem von zwei Modi, abhängig davon, was in den DOCTYPE-Attributwerten angegeben ist. Ein Modus sorgt für Rückwärtskompatibilität mit Implementierungen, die vor den W3C-Standards entwickelt wurden und von diesen abweichen; der andere Modus bewirkt, dass sich der Browser entsprechend der W3C-Empfehlungen verhält. Die Unterschiede zwischen diesen beiden Modi liegen vor allem in den Layoutdetails, die in modernen CSS- und DOM-Spezifikationen sorgfältiger definiert sind. Bei einfachen Layouts sind meist keine Unterschiede festzustellen. Wenn sich Ihre Seiten aber auf Stylesheets oder Hintergründe für Tabellen, die Ausrichtung von Formularsteuerelement en (vor allem in Tabellen), die genaue Steuerung der Schriftgröße oder des Abstands und - in IE - die pixelgenaue CSS-Positionierung im Bezug auf die Kanten des Dokuments und die Größe positionierter Elemente stützen, müssen Sie auf die DOCTYPE-Details in Ihren Dokumenten achten.

Es ist aus Platzgründen unmöglich, an dieser Stelle auf alle Kompatibilitätsdetails einzugehen, doch im Folgenden finden Sie einige allgemeinere Empfehlungen, die Ihnen helfen dürften. Wenn Sie mit den Layouts Ihrer aktuellen Seiten und Vorlagen zufrieden sind, sollten Sie auch weiterhin DOCTYPE-Einstellungen für den rückwärtskompatiblen Modus verwenden (von den Mozilla-Ingenieuren "Quirks-Modus" genannt; bei Microsoft gibt es für diesen Modus keinen besonderen Namen). Wenn Sie jedoch neue Inhalte erstellen, insbesondere für neuere Browser (Version 6 oder später), sollten Sie die Einstellungen für den "strikten" (Navigator) bzw. "standardkompatiblen" (IE) Modus wählen.

Die Anzahl von DOCTYPE-Attributwerten, die heute in Gebrauch sind, ist schier unüberschaubar, und die Regeln, die bestimmen, durch welche Attribute ein Browser in einen bestimmten Modus versetzt wird, unterscheiden sich oft von einem Browser zum anderen. Nachfolgend einige geläufige DOCTYPE-Tags, die Browser der Version 6 unabhängig vom Hersteller in den rückwärtskompatiblen Modus versetzen:

Beachten Sie in diesem Zusammenhang bitte Folgendes. Erstens werden in allen diesen Beispielen HTML-DTDs deklariert, die maximal HTML 4.01 entsprechen, und keine ist für XHTML vorgesehen. Zweitens enthält keines dieser Beispiele eine Systembezeichner-URI für eine Referenz-.dtd-Datei. Wenn Sie das DOCTYPE-Element ganz weglassen, verwendet der Browser das Gegenstück der alten internen DTDs.

Nachfolgend einige geläufige DOCTYPE-Tags, die Browser der Version 6 in den modernen, standardbasierten Modus versetzen:

Alle DTDs vom Typ HTML 4.x/Strict und XHTML aktivieren den standardkompatiblen Modus, mit oder ohne URLs. Wenn Sie bei DTDs vom Typ HTML 4.x Transitional und Frameset die URL angeben, wird der standardkompatible Modus aufgerufen.

Weitere Informationen zu den Auswirkungen, die die DTD-Angabe auf die DOM- und CSS-Merkmale der neuesten Browser hat, enthalten Kapitel 9 (Eigenschaften client und offset, body-Objekt und Eigenschaft document.compatMode) und Kapitel 10 (Attribute height und width). Aus Anhang E geht hervor, welche HTML 4-Elemente und -Attribute zu Validierungszwecken von den gängigsten HTML 4.01- und XHTML 1.0-DTDs unterstützt werden.

 
Objektmodellreferenz
 
[window.]document.firstChild
 
Elementspezifische Attribute

Attribute sind unbeschriftet.

 
Elementspezifische Ereignisbehandlungsroutinenattribute

Keine.

langNN 3 IE 4 HTML 4  

lang="languageCode"

Optional  

Die für die Attributwerte und Inhalte des Elements verwendete Sprache. Mithilfe dieser Informationen ist der Browser besser in der Lage, bestimmte Details wie Ligaturen (sofern von der betreffenden Schrift unterstützt oder in der geschriebenen Sprache erforderlich), Anführungszeichen und Worttrennungen korrekt darzustellen. Andere Anwendungen und Suchmaschinen können anhand dieser Informationen Wörterbücher für die Rechtschreibprüfung auswählen und Indizes erstellen.

 
Beispiel
 
<SPAN lang="de">Deutsche Bundesbahn</SPAN>
 
Wert

Sprachcode, bei dem nicht zwischen Groß- und Kleinschreibung unterschieden wird.

 
Standardwert

Vorgabe des Browsers.

 
Objektmodellreferenz
 
[window.]document.getElementById(elementID).lang