에스제이

반응형

안녕하세요, 오늘은 HTML 맨 위에 선언하는 <!DOCTPYE>이 어떤 의미인지 알아보도록 하겠습니다.

 

1. <!DOCTYPE> 이란??

DOCTYPEdocument type의 약어로, 웹 문서가 어떠한 형식으로 작성되었는지 최상단에 문서의 형식을 선언하는 것을 의미합니다. DOCTYPE 선언의 형식은 HTML 태그는 아니지만, HTML 문서의 버전을 웹 브라우저에 알리며, 대소문자를 구분하지 않지만 보통은 대문자로 사용하고, 일반적으로 HTML 태그보다 먼저 선언됩니다.

 

2. <!DOCTYPE> 선언의 목적

DOCTYPE을 선언하지 않으면 같은 내용의 HTML 문서라 할지라도 각 브라우저의 환경에 따라 전혀 다른 결과물을 출력하는 경우가 발생합니다. 각 브라우저가 HTML 문서를 동일하게 인식할 수 있도록 하고, 문서 간의 호환성을 높이기 위해 선언을 합니다.

 

3. HTML5 버전과 그 이전버전의 차이

HTML5 이전에는 DOCTYPE을 선언하는 코드가 길고 간결하지 않아서 무슨 의미인지 파악도 잘 안 되었지만, 현재 HTML5의 등장으로 웹 표준으로 정착해서 사용하고 있으며, DOCTYPE을 간단하게 선언할 수 있습니다.

 

[ HTML5 ]

<!DOCTYPE html>
<html>
<head>
    <title>에스제이 티스토리에 오신걸 환영합니다.</title>
</head>
<body></body>
</html>

 

[ HTML4와 XHTML]의 DOCTYPE 선언 방법은 코드가 길고 문서 유형에 맞지 않게 HTML 코드를 사용할 경우 오류가 발생하기도 하며, 각 브라우저 마다 다르게 해석하여 다른 결과물 출력하는 경우가 발생합니다. 각 DOCTPYE 선언 방법은 아래와 같습니다.

 

<!-- STATIC MODE(엄격모드) : 문법을 정확하게 준수해야 하며, 문법에 안맞을 경우 오류 발생-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- TRANSITIONAL MODE(호환모드) : HTML 문법에 오류가 있어도 허용한다 -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!-- FRAMESET MODE(프레임셋 모드) : FRAMESET를 사용할 경우 선언 -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

 

4. HTML5 이전버전을 폐지하지 않는 이유

최신 버전으로 통일화하여 사용하면 좋겠지만, HTML5 이전 버전을 폐지하지 않고 유지하는 이유는 과거 웹 자료의 보존의 목적을 가지고 있기 때문입니다.

반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band