Frage

Ich fragte wurde heute von einem Senior-Entwickler, die Doctype ich würde, wenn ich etwas (persönliche / nicht-kommerziellen) für das offene Web schreiben würde.

Ich antwortete <!doctype html>, auf die ich mit einem Blick Schock begrüßt wurde, Entsetzen und Überraschung und dann fragte mich, zu erklären.

In meinen Augen ist es ein guter Kandidat, weil die aktuelle Browser (IE, FF, Opera, Safari) es betrachtet wird und den Inhalt in Standardmodus wechseln - auch wenn sie HTML5 nicht implementieren. Wenn ich will, nehmen tatsächlich Vorteil von HTML5-Elemente, kann ich einige Javascript verwenden, um einen Verweis auf diese Tags erstellen nicht erkannt von, sagen wir, IE (zB document.createElement('article');) und dann mit ihnen arbeiten, als ob sie einheimische Teile des DOM waren.

War das wirklich so eine schlechte Antwort? Was würden Sie beantwortet haben und warum?

War es hilfreich?

Lösung

Während <!doctype html> völlig in Ordnung ist, die WAS-WG Empfehlung ist <!DOCTYPE html> verwenden , nur für den Fall, dass Sie das Dokument als XHTML5 dienen am Ende (in diesem Fall die Aktivierung wird wichtig).

@ David Dorward (nicht in der Lage noch zu kommentieren, so ...) Ich bin nicht einverstanden mit der Darstellung von HTML5. Während das neue Material (Strukturelemente usw.) sind derzeit schlecht von den Browsern unterstützt wird, ist HTML5 90% HTML4 mit definierten Fehlerbehandlung (schließlich). Browser analysieren HTML5 die gleiche wie HTML4, so dass man Strukturelemente (div noch funktioniert) sind die Unterschiede minimal verwenden nicht vorausgesetzt. Validator.nu gibt bessere Ergebnisse als W3 des HTML4.1 Strict Validator, wird schneller entwickelt und basiert auf einer detaillierteren spec.

Mein Rat wäre, die neuen Dinge in HTML5 für den Moment zu ignorieren und sie als eine genauere Spezifikation für HTML4 zu behandeln. Es gibt keine Nachteile und mehrere Vorteile.

Andere Tipps

<!doctype html> scheint in Ordnung ..

  

Was ist mit diesem neuen DOCTYPE ist schön, vor allem ist, dass alle aktuellen Browser (IE, FF, Opera, Safari) es betrachtet werden und den Inhalt in Standardmodus wechseln - auch wenn sie HTML5 nicht implementieren. Das bedeutet, dass Sie beginnen könnten Ihre Web-Seiten heute mit HTML5 schreiben und haben sie zuletzt für eine sehr, sehr lange Zeit. / http://ejohn.org/blog/html5-doctype/

  

War das wirklich so eine schlechte Antwort?

<!DOCTYPE html> war keine schlechte Antwort.

  

Was würden Sie beantwortet haben und warum?

Ich habe meine Dosen-Antwort über einen Doctype im Allgemeinen der Wahl, auch obwohl ich <!DOCTYPE html> für meine neue persönliche Publikationen.

HTML5 - experimentell, unreif QA-Tools, das ein noch bewegliche Ziel hat. (Und wenn Sie verwenden JavaScript (die ausgeschaltet werden könnte) grundlegende Strukturelemente erhalten anerkannt werden dann ‚EEEP!‘).

XHTML - erfordert Anhang C hackery mit dem Internet Explorer zu arbeiten. DTDs sind weniger ausdrucksvoll als HTML 4.

HTML 4 - reife, gut getestet, vor allem von den Browsern unterstützt wird, keine Hacks benötigt. Kann nicht von XML-Tool (aber nur wenige Menschen verwenden diese intern auf Webseiten sowieso)

analysiert werden

Strenge -. Ein guter Kern

Transitional -. Strict und Sachen, die (mit einigen Ausnahmen) sollte vermieden werden,

Daher HTML 4.01 Strict wahrscheinlich die beste Option wäre. Natürlich gibt es Ausnahmen, aber ich würde, dass der Ausgangspunkt.

Ich würde das gleiche wie Sie beantwortet hat, weil Sie richtig sind und ich nicht mehr andere Doctype für neue Web-Seiten für die in mehr guten Links angegebenen Gründe unten (einschließlich Annes Antwort unten, weil er für Opera funktioniert).

Zunächst einmal möchte ich sagen, dass die Doctype nicht in erster Linie eingeführt werden sollten. Sie können keine Cross-Browser-Seiten mit einem anderen als dem Text dienen / html MIME-Typ und mich nicht auf DTDs loszuzulegen.

All Doctype tut, ist Standards-Modus auszulösen und wird nur dann benötigt becasue viele Websites auf Standards nicht gebaut werden geschweige denn W3C-Spezifikation. Wenn der Doctype nur einen Zweck hat dann machen Sie es einfach. HTML5 tut genau das. Entwickler sollten nicht langweilen uns vorgeben, dass der Doctype andere Bedeutung hat als ein- oder ausgeschaltet Standards-Modus umgeschaltet wird.

Der ‚Senior‘ Entwickler sollte mit seiner Arbeit vorankommen und das Streiten Menschen über solche albernen Sachen stoppen.

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