gonalalla

웹표준 DOCTYPE 선언 본문

study

웹표준 DOCTYPE 선언

gonalalla 2016. 3. 25. 21:43



DTD(Document Type Declaration)

: 문서형정의 - 현재의 문서가 어떤 형식에 맞추어 제작되었는지를 설명한다. 



모든 웹 문서는 문서형정의(DTD)를 선언함으로 브라우저에서 표기되며 HTML5, XHTML, HTML의 세가지 유형으로 나뉜다. 

정의한 유형에 따라 마크업 된 문서의 요소와 속성 등을 처리하는 기준이 되며, 웹표준과 접근성 향상을 위해 HTML 문서의 가장 첫번째 행에 공백없이 선언 해야 한다. 

생략시에는 웹문서가 비표준모드로 랜더링 되어 크로스 브라우징에 어려움을 겪을 수 있다. 




HTML5 DOCTYPE 선언

HTML5는 SGML(Standard Generalized Markup Language)에 기반을 두지 않아 DTD 참조가 불필요 하며, 다음과 같이 간단히 선언할 수 있다. 


<!DOCTYPE html>





XHTML 1.0의 DOCTYPE 선언 

XHTML은 각 버전에서 DTD를 상세히 정의해야 한다. 선언 된 DOCTYPE에 따라 문서에 제약을 걸어 적법한 마크업을 쓰도록 하여 보다 정확한 표현을 할 수 있도록 하며, 마크업이 문서에 포함될 수 있는 논리적 구조를 지정한다. DOCTYPE이 생략된 경우 브라우저가 XHTML 문서로 인식하지 않으므로 XML 문법에 어긋난다 하더라도 브라우저는 무시할 수 있다. 



Strict DTD - W3C 권장표준안 

확장된 어트리뷰트를 제공하지 않고 최소한의 태그만을 유지하여 모든 브라우저에서 사용가능하도록 문서에 제약을 건다. 

iframe, font color, bgcolor 등 어트리뷰트가 제한된다. 


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


Transitional DTD - Strict보다 완화된 표준안

일반적으로 가장 많이 쓰이는 제약 사항이고, 제한된 여러가지 내장 된 태그를 거의 대부분 사용할 수 있어 기존에 작성된 문서들과의 호환성을 유지할 수 있다. 


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


Frameset DTD 

프레임을 나누고 프레임에 따라 사용가능한 모든 내용을 포함한다. HTML 4.01과 동일한 DTD를 가지고 있다. 


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




HTML 4.01 DOCTYPE 선언

이전버전의 HTML(~HTML4)은 SGML(Standard Generalized Markup Language)에 기반을 두어 만들어졌기 때문에 DTD 참조가 필요했으며, XHTML처럼 각 버전에서 사용가능한 태그나 속성등을 DTD로 상세히 정의해야 했다. 


Strict DTD 

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


Transitional DTD

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


Frameset DTD 

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








Comments