DTD(문서 유형 정의)는 특정 유형의 HTML에 유효한 태그, 속성 또는 값을 설명하는 XML 문서입니다. HTML은 특정 규칙을 따릅니다. 이러한 규칙은 일반적으로 알려진 DTD(문서 유형 정의) 파일에 포함되어 있습니다. 각 HTML 버전에는 해당 DTD가 있습니다. 이제 "이 모든 것이 CSS와 무슨 관련이 있나요?"라고 물을 수 있습니다.
웹 페이지의 모든 콘텐츠가 웹 브라우저에 정확하고 일관되게 표시되도록 하려면 웹 브라우저에 HTML을 사용하고 있음을 알려야 합니다. 또는 XHTML 어떤 버전이 포함되어 있는지, 웹 페이지 시작 부분에 있는 doctype 선언이 무엇을 의미하는지. 이 문서 유형 선언은 HTML 파일의 첫 번째 줄이며 사용 중인 HTML 버전(예: HTML 4.01 Transitional)을 정의할 뿐만 아니라 웹 페이지의 적절한 DTD 파일을 가리킵니다. 잘못된 문서 설명을 입력하면 대부분의 브라우저는 Quirks 모드라는 경고 상태가 됩니다.
Quirks 모드는 브라우저 제조업체가 1999년경(Netscape 4 및 Internet Explorer 5 시대)부터 소프트웨어를 브라우저처럼 실행하도록 하기 위해 사용하는 방법입니다. 최신 브라우저가 올바른 문서 유형이 없는 웹 페이지를 발견하면 다음과 같이 생각할 것입니다. "글쎄, 이 페이지는 오래 전에 HTML 편집기로 작성되었음에 틀림없어. 웹 페이지를 표시하려면 내가 정말 오래된 브라우저인 척해야 하네. 버그가 많은 오래된 브라우저처럼 페이지가 표시됩니다." 이것이 바로 CSS로 스타일을 지정한 멋진 웹 페이지가 올바른 문서 유형이 없으면 표시되지 않을 수 있는 이유입니다. 현재 표준에 따라 표시되어야 하는 방식입니다. 브라우저를 확인하고 실수로 Quirks 모드에서 페이지를 보는 경우 HTML 또는 CSS의 부적절한 사용 문제가 아닌 잘못된 문서 유형과 관련된 문제를 해결하려는 노력이 중단될 수 있습니다.
다행히도 올바른 문서 유형을 찾는 것은 쉽습니다. 당신이 알아야 할 것은 어떤 HTML 버전이 사용되고 있는지입니다. 현재 가장 널리 사용되는 HTML 및 XHTML 버전은 HTML 4.01 Transitional 및 XHTML 1.0 Transitional입니다. 이러한 HTML 유형을 사용하면 태그와 같은 표시 태그를 사용할 수 있으며 이와 관련하여 이전 버전의 HTML에서 최신 버전의 HTML로의 전환도 제공됩니다. 즉, 더 엄격한 HTML 및 XHTML 태그가 제공됩니다. 이러한 태그를 사용하지 않는 것이 가장 좋지만 Transitional Edition에서는 여전히 작동하므로 상황에 따라 이러한 이전 스타일 태그를 단계적으로 중단할 수 있습니다. 엄격한 버전의 HTML 및 XHTML에서는 일부 이전 스타일 태그가 전혀 작동하지 않습니다.
참고: 일반적으로 HTML 및 XHTML의 엄격한 버전은 태그 및 단락의 가운데 맞춤 속성과 같이 단순히 페이지를 보기 좋게 만드는 태그 및 속성을 허용하지 않습니다. 또한 새 창에서 링크를 열 수 있게 해주는 링크의 대상 속성과 같이 한때 인기 있었던 일부 속성도 허용하지 않습니다.