2017-07-11 2 views
0

Wir haben ein PHP-Framework, das ursprünglich im Jahr 2005 geschrieben wurde, und folglich ist der Standard DOCTYPE HTML 4.01 Transitional.Ist HTML 5 eine Obermenge von HTML 4.01 Transitional?

Während kann dies außer Kraft gesetzt werden, die meisten Projekte (auch jüngeren) haben nicht den Standard geändert, und so werden die meisten Projekte werden Dokumente als HTML dienen 4.

Alle HTML vom Framework erzeugt wurde entwickelt, um passieren Der W3C HTML 4 Validator, und die meisten Projekte werden auch gültiges HTML generieren, da dies eine Unternehmensanforderung ist (Ausnahmen sind jedoch erlaubt, z. B. Verwendung einiger neuer HTML-Elemente wie <canvas>, die die HTML 4-Validierung nicht bestehen würden, aber alle Browser trotzdem) richtig handhaben).

Meine Frage: Wenn ich das Framework einfach umstelle, um einen modernen DOCTYPE zu verwenden, wird das HTML 4-Markup korrekt als HTML 5 validiert, oder muss ich auch Änderungen am Code vornehmen?

Eine zweite Frage: Wird die Render- oder Browserunterstützung von dieser Änderung betroffen sein?

Antwort

1

Wenn ich diesen wikipedia Artikel richtig lese, dann werden alle Browser vom Quirks-Modus zum Standard-Modus wechseln. Dies bedeutet, dass das Browser-Rendering wahrscheinlich betroffen ist.

Ich weiß nichts über die Validierung, aber da das Rendering betroffen sein wird, ist es eine sichere Wette, die Validierung auch zu übernehmen.

Interessante Lektüre:

+0

Guter Punkt! Wir fügen eine Systemkennung hinzu (''), Aus der Tabelle unter https://en.wikipedia.org/wiki/Quirks_mode#Comparison_of_document_types sieht es so aus, als würden sich die Seiten in fast allen Browsern im "fast standard mode" befinden. Das kann zu geringfügigen Rendering-Änderungen führen, aber nicht annähernd so groß, als ob es vom Quirk- zum Standard-Modus würde. – HappyDog

+0

Die Seiteninfo-Box in Firefox sagt, dass die Seiten "Standard-Compliance-Modus" sind, was dem Wikipedia-Artikel widerspricht (es sei denn, Firefox unterscheidet nicht zwischen Standards und fast Standards in diesem Dialogfeld). – HappyDog

+1

Oft werden Standardmodus und fast Standardmodus nicht unterschieden. Aber es ist einfach zu sagen, welche verwendet wird. Fügen Sie das zu Ihrem html hinzu '

' Wenn es einen gelben Streifen unter dem grauen Kasten zeigt, wird Standardsmodus verwendet. Wenn kein gelber Streifen vorhanden ist, wird fast der Standardmodus verwendet. – Alohci