프론트엔드를 처음 배우기 시작할 때 공통적으로 하는 일이 있다.
html파일을 만들고 다음과 같은 코드를 작성하는 것이다.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>HTML TEST</title>
</head>
<body>
안녕하시구리리~~~
</body>
</html>
작성하면서 궁금증이 들었다.
다른 애들은 대충 뭔지 알겠는데, <!DOCTYPE html>
이 아이는 뭘까?
w3schools에서는 다음과 같이 알려주고 있다.
모든 html문서는
<!DOCTYPE>
선언으로 시작해야 한다.
<!DOCTYPE>
은 태그가 아니고, 문서에 대한 정보를 담고 있다.
<!DOCTYPE html>
은 html5에 대한 선언이고, 이전 버전인 html4 또는 xhtml에 대한 선언은 DTD(Document Type Definition)을 참조해야 한다.
HTML 4.01:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
XHTML 1.1:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
DOCTYPE은 Document Type Declaration이다.
<!DOCTYPE>
가 있으면, W3C나 IETF의 표준을 엄격하게 준수하는 표준 모드(Standards Mode)로 보여준다.
<!DOCTYPE html>
은 이 문서의 형식이 html5라는 뜻을 의미한다.
그리고 W3C의 표준을 엄격하게 준수하여 브라우저에서 해당 파일을 보여준다.
<!DOCTYPE>
이 없거나 올바르지 않게 작성된 경우, 쿼크모드(Quirks Mode)로 문서를 보여준다.
쿼크모드는 오래된 웹 페이지의 호환성을 유지하기 위해 사용된다.
이런 경우에는 각각의 브라우저 별로 파일을 보여주는 형식의 차이가 있을 수 있다.