Я испытываю некоторые затруднения, заставляя CGI.pm произвести к HTML5 вместо XHTML 1.0 или HTML 4.01. Когда я пробую "HTML5"
или "HTML 5"
как -dtd
аргумент в start_html()
Я получаю документ в HTML 4. Я также попытался импортировать :HTML5
, но это, кажется, не работает также. Совет?
Правильный тип документа для HTML 5 - это просто «html», а не «html5» или «html 5», и не использует DTD. CGI.pm поддерживает только правильно сформированные DTD, а не произвольные строки. Поскольку тип документа HTML 5 не включает правильно сформированный DTD, CGI.pm (в текущей версии 3.49) не поддерживает тип документа HTML 5.
Использование функций генерации HTML в CGI.pm в наши дни, как правило, не одобряется. Системы создания шаблонов, такие как Template :: Toolkit или HTML :: Template , предпочтительны из-за их способности четко отделять логику вашего кода от форматирования его вывода. Они также, кстати, позволяют вам указать любой тип документа и код для любой версии (X) HTML, которую вы выберете.
Заплатите модуль, чтобы добавить поддержку HTML5… или просто выведите Doctype вручную, а затем используйте его как обычно. Если это действительный XHTML 1.0 или HTML 4.01, то это действительный HTML 5.