DTD선언이란? html문서 최상단에 선언되는 DOCTYPE은 문서의 종류를 정의해주는 선언문입니다. (DTD:doc-ument Type Definition)
DTD가 정의되지 않은 문서를 Quirks Mode라 부르는데, Quirks Mode에선 브라우저마다 제각각 랜더링되기 때문에 브라우저 호환성을 기대하기 어렵습니다.
만약에DOCTYPE 선언하지 않는다면 브라우저는 현재 페이지가 어떠한 HTML 버전을 사용하고 있는지 인식할 수 없기 때문에 호환모드(quirks mode)로 변환을 해서 rendering(화면구현)하게 됩니다.
브라우저가 알아서 호환모드로 변환하여 rendering하는 것은 마크업과 스타일시트의 조합으로 멋진 사이트를 제작했다 하더라도 호환모드로 rendering한 브라우저는 매번 똑같은 화면묘사를 보여준다는 보장을 할 수 없기때문에 사용자에게 큰 혼란을 가져다 줄 수도 있습니다.
DOCTYPE은 문서의 목적이나 구조에 따라 필요한 종류를 선언할 수 있습니다.
그 종류에는 엄격한 문법과 구조를 요구하는 strict 버전과
구버전의 속성이나 Tag를 허용하는 transitional 버전
그리고 frame 을 이용해 제작하는 페이지를 위한 frameset 버전이 있습니다.
DTD의 종류는 아래와 같습니다.
| HTML 4.01 Strict <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org Transitional (권장) <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http:// Frameset <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://ww XHTML 1.0 Strict <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www. Transitional (권장) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:// Frameset <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://w |
transitional을 권장하는 이유는 strict모두에선 새창 띄우기 같은 사용자에게 익숙한 이벤트를 사용할 수 없기 때문에 호환성이 좋은 transitional 모두를 권장합니다.
'웹표준 개발' 카테고리의 다른 글
| CSS 선택자(selector)에 대해서 정리해봅니다. 2 (0) | 2010/05/31 |
|---|---|
| CSS 선택자(selector)에 대해서 정리해봅니다. 1 (2) | 2010/05/20 |
| [웹표준 코딩]CSS 폰트 단위를 알아봅시다 (2) | 2010/05/06 |
| 웹페이지에 옷을 입히는 스타일시트 연결 (1) | 2010/04/26 |
| html과 xhtml의 차이점 (0) | 2010/04/19 |
| DTD선언이란? (0) | 2010/04/12 |



