Wie bekomme ich CGI.Uhr-Ausgabe HTML5 anstelle von XHTML 1.0?
Ich habe einige Mühe, CGI.Uhr auf die Ausgabe von HTML5 anstelle von XHTML 1.0 oder HTML 4.01. Wenn ich versuche "HTML5"
oder "HTML 5"
als -dtd
argument in start_html()
ich ein Dokument in HTML 4. Ich habe auch versucht den Import :HTML5
, aber das scheint nicht zu funktionieren. Irgendwelche Ratschläge?
- Nicht verwenden CGI.pm zum erstellen von HTML. 🙂
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den korrekten doctype für HTML 5 wird nur "html", nicht "html5" oder "html 5", und nicht mithilfe einer DTD. CGI.pm unterstützt nur wohlgeformte DTDs, nicht beliebige strings. Da der HTML-5-doctype-Deklaration nicht enthalten ist eine wohlgeformte DTD, CGI.Uhr (ab der aktuellen version 3.49) unterstützt nicht die HTML-5-doctype-Deklaration.
Verwendung von CGI.pm ' s HTML-Generierung ist in der Regel verpönt in diesen Tagen. Template-Systeme wie Template::Toolkit oder HTML::Template bevorzugt sind, für Ihre Fähigkeit, sauber zu trennen-code ist Logik von der Formatierung der Ausgabe. Sie übrigens auch, können Sie angeben, was doctype und den code, um welche version von (X)HTML, die Sie wählen.
print
um es zu senden alle. Wenn Sie nach einer anderen Frage, die erklären, genau das, was Art von HTTP-Verarbeitung zu tun, ich bin sicher du bekommst ein paar gute Vorschläge, aber.Hier ist ein fragment von etwas code, wo ich 'gelöst' das problem mit Hilfe von brute-force.
Hier sind einige Perl5-frameworks, die HTML5-friendly:
Katalysator http://www.catalystframework.org/
Tänzerin http://perldancer.org/documentation
Mojolicious http://mojolicio.us/
Ich bin Neigung in Richtung mit Mojolicious für meine neueste Perl-Projekt.
Alle diese sind mehr relevant für robuste HTML5-apps als das CGI-Modul. CGI hat noch immer seinen Platz und wird immer noch entwickelt/unterstützt, aber nicht stabile HTML5-apps sowie einige der frameworks, die es gibt.
Patch das Modul zum hinzufügen von Unterstützung für HTML5 ... oder einfach nur Ausgang ein Doctype manuell, dann verwenden Sie es als normal. Wenn es valides XHTML 1.0 oder HTML 4.01 dann ist es gültiges HTML 5.