HTML 문서를 작성할 때 일반적으로 선언, <html>, <head>, <body> 태그가 필수 요소라고 알려져 있습니다. 하지만 흥미롭게도 <head> 요소가 없어도 유효한(valid) HTML 문서를 만들 수 있습니다.
DOCTYPE 선언의 역할
가장 중요한 것은 DOCTYPE 선언입니다. 은 항상 문서 최상단에 위치해야 하며, 브라우저에게 이 문서가 어떤 표준에 따라 작성된 HTML 페이지인지 알려주는 역할을 합니다. 이 선언이 있으면 브라우저가 표준 모드(Standards Mode)로 페이지를 렌더링합니다.
head 요소 없이도 동작하는 이유
HTML5 사양에서는 <html>, <head>, <body> 태그를 생략할 수 있는 경우가 있습니다. 브라우저는 누락된 태그를 자동으로 보완하여 문서를 해석하기 때문입니다. 특히 <title> 태그처럼 원래 head 안에 들어가야 할 요소가 body 밖에서 발견되면, 브라우저가 암묵적으로 head 영역을 생성해 처리합니다.
예제 코드
다음 예제는 <head> 태그 없이 작성된 HTML 문서입니다. 그럼에도 불구하고 이 문서는 유효하며, 다른 정상적인 HTML 문서와 마찬가지로 브라우저에서 올바르게 동작합니다.
<!DOCTYPE html> <html> <title>문서의 제목</title> <body> <h1>제목 1</h1> <p>데모 텍스트입니다.</p> </body> </html>
정리
이처럼 <head> 요소를 생략해도 브라우저가 자동으로 처리해 주기 때문에 문서는 여전히 유효하게 인식됩니다. 다만 실무에서는 메타 정보, 스타일시트, 스크립트 등을 명확하게 구분하기 위해 <head> 요소를 명시적으로 작성하는 것이 좋습니다.