<!DOCTYPE> 문서 형식 정의 종류와 버전별 차이

2020. 1. 11. 00:30

DOCTYPE(문서형정의) 종류와 버전별 차이를 알아보자



DOCTYPE이란 어떤 SGML이나 XML 기반 문서 내에 그 문서가 특정 문서 형식 정의를 따름을 지정하는 것이다.

모든 웹 문서는 문서형 정의(DTD:Document Type Definition)의 선언으로 시작하여 해당 웹문서의 버전과 종류를 나타낸다.

'문서형 정의'는 HTML5, XHTML, HTML의 세 가지가 있으며, 웹 브라우저가 '문서형 정의'에 따라 웹 문서를 랜더링 한다

만약 '문서형 정의'를 생략하게 되면 웹 브라우저는 비표준모드(Quirks mode)로 랜더링 하여 의도하지 않는 동작이 발생할 수 있다




DOCTYPE 유형별 차이점


○ Strict

엄격한 규격으로 구조와 표현을 분리했고 단계적으로 없어질 요소와 속성을 제외 시킨 문서 타입이다. 따라서 비표준 태그인 center, font 등을 사용할 수 없다. 이런 태그는 css로 대체해야 동작한다.


○ Transitional

표준이 정립되지 않은 때에 만들어진 문서들과의 호환성을 유지하기 위해 만들어진 문서 타입이다. iframe과 새창 띄우기(target="_blank")등을 사용하기 위해 선택할 수 있는 문서 타입이다.


○ Frameset

프레임셋을 지원하기 위한 문서타입이다. 지금은 거의 사용하지 않는 태그인데 프레임셋을 사용하기 위해 선택할 수 있는 문서 타입이다




DOCTYPE 종류 및 버전별 선언 방법



○ HTML5

<!DOCTYPE html>


○ HTML 4.01 Strict

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 


○ HTML 4.01 Transitional

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">


○ HTML 4.01 Frameset

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">


○ XHTML 1.0 Strict

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">


○ XHTML 1.0 Transitional

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


○ XHTML 1.0 Frameset

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">


○ XHTML 1.1

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">




이상으로 DOCTYPE(문서형정의) 종류와 버전별 차이를 알아봤습니다.





[팁]

DOCTYPE 버전별 지원 테그는 아래 링크에서 확인

https://www.w3schools.com/tags/ref_html_dtd.asp


[참조]

http://www.w3schools.com