HTML 사양에 따라 특정 경우에 특정 태그를 생략 할 수 있지만 일반적으로 그렇게하는 것은 현명하지 않습니다.
두 가지 효과가 있습니다-스펙이 더 복잡 해져서 브라우저 작성자가 올바른 구현을 작성하는 것이 어렵습니다 (IE가 잘못 알고 있음).
이것은 스펙의이 부분에서 브라우저 오류 가능성을 높입니다. 웹 사이트 작성자는 이러한 태그를 포함하여이 문제를 피할 수 있습니다. 따라서 사양에서 요구하지는 않지만 문제가 발생할 가능성을 줄이면 엔지니어링이 우수합니다.
또한 최신 HTML 5.1 WG 사양에는 현재 진행중인 작업이며 아직 변경 될 수 있음을 명심하십시오.
본문 요소의 첫 번째 항목이 메타, 링크, 스크립트, 스타일 인 경우를 제외하고, 요소가 비어 있거나 본문 요소의 첫 번째 항목이 공백 문자 나 주석이 아닌 경우 본문 요소의 시작 태그를 생략 할 수 있습니다. 또는 템플릿 요소입니다.
http://www.w3.org/html/wg/drafts/html/master/sections.html#the-body-element
이것은 약간 미묘합니다. 바디와 헤드를 생략하면 브라우저가 해당 요소를 삽입 할 위치를 유추합니다. 이로 인해 명시 적이 지 않아 혼동 될 수 있습니다.
그래서 이거
<html>
<h1>hello</h1>
<script ... >
...
script 요소가 body 요소의 자식이되지만
<html>
<script ... >
<h1>hello</h1>
스크립트 태그는 head 요소의 자식이됩니다.
이렇게하면 명시 적으로 나타날 수 있습니다
<html>
<body>
<script ... >
<h1>hello</h1>
그런 다음 스크립트 또는 h1 중 어느 것이 먼저 있든지 body 요소에 예상대로 나타납니다. 이것들은 코드를 리팩토링하고 디버깅하는 동안 간과하기 쉬운 것들입니다. (예를 들어, 본문에서 첫 번째 스크립트 요소를 찾고있는 JS가 있습니다. 두 번째 스 니펫에서는 작동을 멈 춥니 다.
일반적으로 사물에 대해 명시 적으로 표현하는 것이 사물을 해석에 공개하는 것보다 항상 좋습니다. 이와 관련하여 XHTML은 코드에서 요소 구조에 대해 완전히 명시해야하기 때문에 더 단순하고 잘못 해석하기가 쉽지 않기 때문에 더 좋습니다.
따라서 예, 생략하고 기술적으로 유효 할 수는 있지만 일반적으로 그렇게하는 것은 현명하지 않습니다.
title
태그 가 필요합니다 . 이것은 유효한 것으로 간주되는 가장 작은 문서입니다 :<!DOCTYPE html> <title>A</title>