XHTML이란?
HTML 4.01 규약에 거의 준한다.
일반 HTML에 비해 좀더 명확하고 구조적인 특징을 가지고 있다.
XSL을 함께 사용하면 브라우저에 사용자의 새로운 태그를 표시할 수 있다.
XHTML의 장점
호환성 및 확장 가능성
유지 비용의 감소 및 재생산성 확대
가벼운 로딩 속도
XHTML 문서의 구조
HTML 2.0 표준 문서 형식
<! DOCTYPE html PUBLIC “-//IETF//DTD HTML 2.0//EN”>
HTML 3.2 표준 문서 형식
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 3.2 Final//EN”>
HTML 4.01 표준 문서 형식
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN”
“http://www.w3.org/TR/html4/strict.dtd”>
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”
“http://www.w3.org/TR/html4/loose.dtd”>
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Frameset//EN”
“http://www.w3.org/TR/html4/frameset.dtd”>
XHTML 1.0 표준 문서 형식
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN”
“http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”
“http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<!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 html PUBLIC “-//W3C//DTD XHTML 1.1//EN”
“http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd”>
<html xmlns=http://www.w3.org/1999/xhtml xml:lang=”ko-KR”>
<head>
<title>…</title>
</head>
<body>
…
</body>
</html>
XHTML 일반 문법 준수
정확한 문서 구조 준수
문서의 루트 요소는 html이 도어야 하며, 이 html 요소는 xhtml 네임스페이스를 지정해야 한다.
<html xmlns=”http://www.w3.org/1999/xhtml”>
모든 문서는 완벽하게 중첩되어야 한다.
- 모든 요소들이 완벽하게 내포 되어야 하는 것은 필수적이다.
- 모든 속성 값은 인용 부호(“나’)로 묶어야 한다.
- 모든 요소와 속성은 소문자여야 한다.
- 모든 요소는 닫아야 한다.
DTD에서 EMPTY로 선언된 경우를 제외하고 모든 요소에는 종료 태그가 포함되어야 한다.
빈 요소에는 종료 태그가 포함되거나 시작 태그가 />로 끝나야 한다.
또한, XML을 사용할 수 없는 이전 브라우저와의 호환성을 위해 /> 앞에 공백이 있어야 한다.
모든 속성값은 속성이 함께 선언되어야 한다.
모든 Script 및 Style 요소에는 type 속성이 포함되어야 한다.
모든 img 및 area 요소에는 alt 속성이 포함되어야 한다.
모든 script 내의 태그는 Escape 시켜야 한다.
XHTML에서, 스크립트와 스타일 요소들은 #PCDATA 컨텐츠를 갖는 것으로 선언된다.
결과적으로, <과 &는 마크업의 시작으로 처리되고, <과 &와 같은 개체들은 XML프로세스에 의해 각각 <M과 &로의 개체 참조로서 인식되므로 CDATA로 마크업 하여 표시하는 게 좋다.
<script type=”text/javascript”>
<![CDATA[
… <h1 데이터</h1>
]]>
</script>
모든 문서 내 URL에서 &를 쓰면 안 된다.
HTML 문서 내에서는 &대신 &를 사용한다.
(본 내용은 KIPA에서 제공한 실전 웹 표준 가이드의 내용을 제가 정리한 것입니다.)