Недавно у меня было собеседование, и один из вопросов был «Нужен ли тип документа для документов HTML 5?». Я ответил «нет», но у меня есть ощущение, что я могу ошибаться. С w3 похоже, что это абсолютно необходимо, но если я наберу простой HTML, как
<html>
<body>
<input type="color" disabled/>
</body>
</html>
сохраните его как HTML и попробуйте открыть в Chrome - он будет работать отлично, с новым вводом цвета (отключено). Этим вводом является HTML5, а также атрибут.
Итак, вопрос в том, нужно ли указывать тип документа или нет? Какой будет правильный ответ на собеседование?
Doctype
элемента это не документ HTML5.hello world
текстовый редактор, сохранить его как HTML, и он будет отображаться в Chrome. Оказывается, в Chrome (и во многих других браузерах) для вас есть что добавить, даже если это «необходимо».Ответы:
Правильный ответ будет «Это зависит».
DOCTYPE является необязательным для документов HTML5 с синтаксисом XHTML (т. Е. Документов XHTML5):
DOCTYPE требуется для документов HTML5 в синтаксисе HTML :
Исключения
HTML5 документы в
srcdoc
атрибуте в качествеiframe
элемента не нужен DOCTYPE:источник
Мне бы тоже ответили «нет» (неправильно, как это бывает).
Однако http://www.w3.org/TR/html5/syntax.html#the-doctype гласит:
Кстати, GIYF
источник
Если вы хотите написать документ HTML5, соответствующий стандарту w3c, то
<!DOCTYPE html>
это необходимо.Но на практике вам не всегда нужен тип документа, потому что любой обычный веб-браузер будет отображать ваш документ независимо. Тем не менее, некоторые браузеры будут использовать устаревший режим, в котором некоторые функции интерпретируются неправильно, и вместо этого каким-то образом более ранняя версия браузера обрабатывает его (большинство из них связаны с макетом).
Какой ответ подходит для этого интервью ? Это зависит от менталитета человека, который брал у тебя интервью. На собеседовании не имеет значения, правы вы или нет. Имеет значение только то, какое впечатление вы производите на интервьюера.
источник