Recentemente, tive uma entrevista de emprego e uma das perguntas foi "O doctype é necessário para documentos HTML 5?". Eu respondi "não", mas tenho a sensação de que posso estar errado. No w3 , parece absolutamente necessário, mas se eu digitar um HTML simples como
<html>
<body>
<input type="color" disabled/>
</body>
</html>
salve-o como HTML e tente abrir no Chrome - funcionaria perfeitamente bem, com uma nova entrada de cores (desativada). Essa entrada é HTML5, bem como atributo.
Portanto, a pergunta é: preciso especificar doctype ou não? Qual seria a resposta correta para a entrevista?
Doctype
elemento não é um documento HTML5.hello world
um editor de texto, salvá-lo como HTML e ele será renderizado no Chrome. Acontece que o Chrome (e muitos outros navegadores) coloca coisas para você, mesmo que seja "obrigatório".Respostas:
A resposta correta seria "Depende".
Um DOCTYPE é opcional para documentos HTML5 na sintaxe XHTML (ou seja, documentos XHTML5):
Um DOCTYPE é necessário para documentos HTML5 na sintaxe HTML :
Exceções
Os documentos HTML5 no
srcdoc
atributo de umiframe
elemento não precisam de um DOCTYPE:fonte
Eu também teria respondido "não" (errado, por acaso).
No entanto, http://www.w3.org/TR/html5/syntax.html#the-doctype diz:
BTW, GIYF
fonte
Quando você deseja escrever um documento HTML5 em conformidade com o padrão w3c,
<!DOCTYPE html>
é necessário.Mas, na prática, você nem sempre precisa de um tipo de documento, porque qualquer navegador comum renderiza seu documento independentemente. No entanto, alguns navegadores usarão um modo legado no qual alguns recursos não serão interpretados corretamente e, de certa forma, uma versão anterior do navegador o tratará (a maioria relacionada ao layout).
Qual resposta é correta para esta entrevista ? Isso depende da mentalidade da pessoa que o entrevistou. Em uma entrevista de emprego, não importa se você está certo ou errado. Importa apenas a impressão que você causa no entrevistador.
fonte