Ist es sicher, einfach die Webseite doctype HTML 4.01 oder XHTML 1.0 zu doctype HTML5 zu ändern?

8

Angenommen, ich möchte eine ältere Website als "HTML5" -ish ändern. Ist es sicher, einfach die Überschrift doctype wie folgt zu ändern?

%Vor%

Der ursprüngliche Doctyp könnte sein:

%Vor%

oder

%Vor%

Wenn der Wechsel zu <!doctype html> keine Möglichkeit hat, die Darstellung der alten Webseite zu ruinieren, würde ich annehmen, dass sie sicher ist.

    
Morgan Cheng 23.01.2012, 15:17
quelle

5 Antworten

5

Warum ja, ja, ist es.

Tatsächlich wurde HTML5 speziell dafür entwickelt, so dass jeder seinen Doctype einfach ändern konnte, ohne das Markup zu berühren und es wäre gültig.

    
Madara Uchiha 23.01.2012 15:19
quelle
5

Fast sicher.

Dieser Doctype:

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

verursacht in Browsern einen Modus mit eingeschränkten Macken / fast Standards, während dieser Doctyp:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

und dieser Doctype

<!doctype html>

verursacht Standards in Browsern.

Der Unterschied besteht darin, dass einige Inline-Elemente in Zeilenfeldern vertikal ausgerichtet sind.

    
Alohci 23.01.2012 19:43
quelle
2

Wenn Ihr "loses" Dokument veraltete Tags wie "font" oder "frameset" enthält, wird die Seite nicht validiert, sobald Sie sie in HTML5 geändert haben. Wird es funktionieren? Ja, sehr wahrscheinlich. Wird es gültig sein? Hängt vom tatsächlichen Inhalt ab. Höchstwahrscheinlich sind Ihre strengen Dokumente, wenn sie gültig waren, immer noch gültig, aber die "losen" Dokumente sind möglicherweise nicht gültig.

Was passiert mit dem Display? Das hängt davon ab. Ich habe festgestellt, dass die Änderung eines Übergangsdokuments in HTML5 zu Anzeigeänderungen in einigen Browsern führte - in einigen Fällen radikal genug, dass ich sie zurückstellen musste, bis ich Zeit hatte, die betreffenden Seiten neu zu schreiben.

    
Doug 23.01.2012 15:25
quelle
1

Es hängt von Ihrer Definition von Safe ab.

Es wird zuverlässig die gleichen Rendering-Modi in den Browsern auslösen, so dass Sie keine Unterschiede erhalten, die sich auf die Endbenutzer auswirken.

Es wird auch die Regeln ändern, die ein Validierer verwenden wird, um das Dokument zu überprüfen, so dass es Probleme für Ihren QA-Prozess geben kann, da Dokumente aktualisiert werden müssen.

    
Quentin 23.01.2012 15:21
quelle
1

Ich habe gerade herausgefunden, dass es NICHT sicher ist. Ich brauchte einige HTML5-Elemente in einer alten Website, die seit ein paar Jahren funktioniert. Ich musste den Doctype zu HTML ändern, weil einige Browser sonst nicht mit den neuen Elementen arbeiten würden.

Es stellte sich heraus, dass in Javascript die domobject.name nicht mit der neuen doctype funktioniert. Sie müssen domobject.attributes["name"].value verwenden. Kurz gesagt, diese einfache Sache hat große Probleme mit der Kernfunktionalität der Website verursacht.

Daher ist es am besten, alles nach dem Ändern der doctype zu testen, da es verschiedene Dinge zerstören kann, von denen du nicht denken würdest ...

    
Radosław Gers 10.04.2013 01:36
quelle

Tags und Links