문서형 선언(DOCTYPE)

문서형 선언(DOCTYPE)

유효성 검사를 위해서는, 문서에 문서형 선언(혹은 DOCTYPE)이 포함되어 있어야 한다. DOCTYPE은 브라우저에 어떤 문서형 정의(DTD)를 적용할 것인가를 선언한다. 문서형 선언은 XHTML 문서의 가장 첫 부분에 위치해야 한다. XHTML 문서의 형 선언은 다음과 같다. 


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">



XHTML 문서에서 문자 인코딩은 XML 선언이나 meta http-equiv 문에 반드시 명시되어야 한다. (만약 XML 문서에 인코딩이 기술되어 있지 않다면, 상위 프로토콜에서 미리 지정되지 않는 한, XML 해석기는 UTF-8이나 UTF-16으로 간주한다.)

일반적인 오류
다음은 XHTML에서 작성되지 말아야 할 오류이다. 


닫히지 않은 빈(닫는 태그가 없는) 요소(빈 요소는 끝에 공백과 함께 />를 붙여야 함.)
틀림: <br>
옳음: <br />
 
닫히지 않은 비지 않은 요소(비지 않은 요소는 닫는 태그가 있어야 함.)
틀림: <p>첫번째 문장<p>두 번째 문장
옳음: <p>첫번째 문장</p><p>두 번째 문장</p>
 
부적절하게 포개어진 요소(elements must be closed in reverse order - 요소들은 순서대로 닫혀야 한다.)
틀림: <em><strong>This is some text.</em></strong>
옳음: <em><strong>This is some text.</strong></em>

이미지에 대한 대체 텍스트가 기술되지 않음.(대체 텍스트는 이미지를 로드하지 못하는 장치나 시각장애인의 스크린리더가 접근하기 쉽게 만들어준다.)
틀림: <img src="/skins/common/images/poweredby_mediawiki_88x31.png" />
옳음: <img src="/skins/common/images/poweredby_mediawiki_88x31.png" alt="MediaWiki" />

본문에 직접 텍스트를 삽입(태그가 텍스트를 감싸지 않음.)
틀림: <body>Welcome to my page.</body>
옳음: <body><p>Welcome to my page.</p></body>

인라인 요소가 블록-레벨 요소를 포함함.
틀림: <em><h2>Introduction</h2></em>
옳음: <h2><em>Introduction</em></h2>

속성 값을 인용부호로 감싸지 않음
틀림: <td rowspan=3>
옳음: <td rowspan="3">

'&' 문자를 직접 사용 ('&amp;'로 대체)
틀림: <title>Cars & Trucks</title>
옳음: <title>Cars &amp; Trucks</title>

태그 이름이나 태그 속성에 대문자를 사용
틀림: <BODY><P>The Best Page Ever</P></BODY>
옳음: <body><p>The Best Page Ever</p></body>

간소화된 속성 사용
틀림: <textarea readonly>READ-ONLY</textarea>
옳음: <textarea readonly="readonly">READ-ONLY</textarea>
이것은 완전한 목록은 아니지만 XHTML 코드 작성 시에 흔히 생기는 일반적인 오류들을 포함하고 있다.

 
신고
by raskolnikov

티스토리 툴바