이 기사는 DocType 요소를 체계적으로 설명합니다. 동시에 많은 정보가 확인되었습니다. 인터넷의 정보는 매우 지저분하기 때문에 수집 및 정렬 후 재정의했습니다. 예를 들어, DocType 요소의 정의는 주로 기본 지식과 고급 지식으로 나뉩니다. 기본 지식은 기본적인 문서 지식을 설명합니다. 많은 고급 지식은 인터넷, 주로 실용적인 기술에서 나옵니다.
DocType는 문서 유형의 약어입니다. <! doctype> 요소는 페이지의 문서 유형 선언 (DTD)을 선언하는 데 사용됩니다. 이 요소 선언은 문서 앞면에 있으며 <html> 태그 이전에 있습니다. 페이지의 DTD를 확인하면 페이지가 사용하는 W3C 사양 (예 : HTML 또는 XHTML 사양)을 결정할 수도 있습니다.
W3C 사양의 올바른 번역은 W3C (W3C 권장 사항)에 권장되어야합니다. 많은 디자이너의 눈에서 W3C가 표준입니다. 그러나 많은 사람들이 약간의 이해 만하고 있습니다. 다음은 현재 W3C 사양에서 HTML 사양 및 XHTML 사양에 나열되어 있습니다. 나중에 HTML과 XHTML의 관계를 설명 할 것입니다.
| 사양 | 추천하다 |
HTML 3.2 | 1997 년 1 월 14 일 |
HTML 4.0 | 1998 년 5 월 24 일 |
HTML 4.01 | 1999 년 12 월 24 일 |
| 사양 | 초안/제안 | 추천하다 |
XHTML 1.0 | 2000 년 1 월 26 일 | |
XHTML 1.0 개정 | 2002 년 8 월 1 일 | |
XHTML 1.1 | 2001 년 5 월 31 일 | |
XHTML 모듈 | 2001 년 4 월 10 일 | |
XHTML 모듈 1.1 | 2006 년 7 월 5 일 | |
xhtml 기본 | 2000 년 12 월 19 일 | |
XHTML 기본 1.1 | 2006 년 7 월 5 일 | |
XHTML 이벤트 | 2003 년 10 월 14 일 | |
XHTML 이벤트 2 | 2007 년 2 월 16 일 | |
xhtml 인쇄 | 2006 년 9 월 20 일 | |
XHTML 미디어 유형 | 2002 년 8 월 1 일 | |
xforms 1.0 | 2003 년 10 월 14 일 | |
xforms 1.0 (SE) | 2006 년 3 월 14 일 | |
xforms 1.1 | 2007 년 2 월 22 일 | |
XHTML 2.0 | 2006 년 7 월 26 일 | |
xlink | 2001 년 6 월 27 일 | |
hlink | 2002 년 9 월 13 일 |
XHTML은 최신 HTML 사양으로 간주 될 수 있으며 HTML 4.01에서 원활하게 마이그레이션 할 수있는 XML 응용 프로그램입니다. W3C 리팩토링 HTML 4.01의 XML 로의 첫 번째 단계는 XHTML 1.0의 탄생으로 이어졌습니다. XHTML 1.0은 HTML 4.01 태그가 제공하는 의미론에 의존합니다.
페이지 파일은 <doctype> 요소를 통해 다른 DTD를 선언하여 현재 페이지가 준수하는 HTML 또는 XHTML 사양에 브라우저를 알려줍니다. 다음은 HTML4.01 및 XHTML1.0 사양과 관련된 DTD만을 나열합니다.
HTML 4.01은 세 가지 문서 유형을 지정합니다 : 엄격, 전환 및 프레임 세트.
프리젠 테이션 레이어의 혼란을 피하기 위해 깨끗한 표시가 필요한 경우이 유형을 사용하십시오. 계단식 스타일 시트 (CSS)와 함께 사용하십시오.
<! doctype html public- // w3c // dtd html 4.01 // en
http://www.w3.org/tr/html4/strict.dtd>
과도기 DTD에는 W3C가 스타일 시트로 이동할 것으로 예상되는 렌더링 특성 및 요소가 포함될 수 있습니다. 독자가 계단식 스타일 시트 (CSS)를 지원하지 않는 브라우저를 사용하여 HTML의 렌더링 기능을 사용해야하는 경우이 유형을 사용하십시오.
<! doctype html public- // w3c // dtd html 4.01 Transitional // en
http://www.w3.org/tr/html4/loose.dtd>
프레임 세트 DTD는 프레임이있는 문서에 사용해야합니다. 신체 요소를 대체하는 프레임 세트 요소를 제외하고, 프레임 세트 DTD는 과도기 DTD와 같습니다.
<! doctype html public- // w3c // dtd html 4.01 프레임 세트 // en
http://www.w3.org/tr/html4/frameset.dtd>
XHTML 1.0 세 가지 XML 문서 유형의 세 가지를 지정합니다 : 엄격, 전환 및 프레임 세트.
프리젠 테이션 레이어의 혼란을 피하기 위해 깨끗한 표시가 필요한 경우이 유형을 사용하십시오. 계단식 스타일 시트 (CSS)와 함께 사용하십시오.
<! doctype html
public- // w3c // dtd xhtml 1.0 엄격한 // en
http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd>
과도기 DTD에는 W3C가 스타일 시트로 이동할 것으로 예상되는 렌더링 특성 및 요소가 포함될 수 있습니다. 독자가 계단식 스타일 시트 (CSS)를 지원하지 않는 브라우저를 사용하여 XHTML의 렌더링 기능을 사용해야하는 경우이 유형을 사용하십시오.
<! doctype html
public- // w3c // dtd xhtml 1.0 Transitional // en
http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd>
프레임 워크를 사용하려면이 DTD를 사용하십시오!
<! doctype html
public- // w3c // dtd xhtml 1.0 프레임 세트 // en
http://www.w3.org/tr/xhtml1/dtd/xhtml1-frameset.dtd>
HTML 최상위 요소 가용성 등록 // 조직 // type tags // 정의 언어 URL
최상위 요소 : DTD에서 선언 된 최상위 요소 유형을 지정합니다. 이것은 선언 된 SGML 문서 유형에 해당합니다. 기본값은 HTML입니다.
가용성 : 공식 공개 식별자 (FPI)가 공개적으로 액세스 가능한 객체 또는 시스템 리소스인지 여부를 지정합니다. 값은 공개 또는 System.public Default 일 수 있습니다. 공개적으로 접근 가능한 객체를 나타냅니다. 시스템은 로컬 파일 또는 URL과 같은 시스템 리소스를 나타냅니다.
등록 : 조직이 국제 표준화기구 (ISO)에 의해 등록되었는지 여부를 지정합니다.
+는 기본값이며 조직 이름이 등록되었음을 나타냅니다.
- 조직 이름이 등록되지 않았 음을 의미합니다. 인터넷 엔지니어링 태스크 포스 (IETF)와 월드 와이드 웹 협회 (W3C)는 등록 된 ISO 조직이 아닙니다.
조직 :! doctype 선언, 즉 소유자에 의해 언급 된 DTD의 생성 및 유지 보수를 나타내는 그룹 또는 조직의 이름을 지정합니다. IETF는 IETF입니다. W3C는 W3C입니다.
유형 : 공개 텍스트 클래스, 즉 참조 된 객체 유형을 지정합니다. 기본값은 DTD입니다.
태그 : 공개 텍스트 설명, 즉 인용 된 공개 텍스트의 고유 한 설명 이름을 지정합니다. 버전 번호는 나중에 포함될 수 있습니다. 기본값은 HTML입니다.
정의 : 문서 유형 정의를 지정합니다.
프레임 세트 프레임 세트 문서.
스타일 시트는 이미 완벽하기 때문에 W3C 전문가가 단계적으로 폐지하려는 모든 대표 속성과 요소를 엄격하게 제외합니다.
과도기에는 프레임 세트 요소를 제외한 모든 내용이 포함됩니다.
언어 : 공개 텍스트 언어, 즉 참조 된 객체를 만드는 데 사용되는 자연어 인코딩 시스템을 지정합니다. 언어 정의는 ISO 639 언어 코드 (Capital Two Letters)로 작성되었습니다. 기본값. 영어.
URL : 참조 된 객체의 위치를 지정합니다.
페이지 컨텐츠가 DocType에서 선언 된 표준을 충족하는지 확인하려면 W3C에서 제공 한 확인 도구를 사용할 수 있습니다.
http://validator.w3.org/
최신 브라우저에는 W3C 표준을 따르는 웹 페이지와 이전 브라우저 용으로 설계된 웹 페이지를 지원하기 위해 다양한 렌더링 모드가 포함됩니다. 그중에서도 표준 모드 (즉, 엄격한 프리젠 테이션 모드)는 최신 표준을 따르는 웹 페이지를 제시하는 데 사용되는 반면, Quirks 모드 (즉, 느슨한 프레젠테이션 모드 또는 호환 모드)는 기존 브라우저 용으로 설계된 웹 페이지를 제시하는 데 사용됩니다. 또한 Mozilla/Netscape 6은 기존 버전의 표준을 위해 설계된 웹 페이지를 지원하기 위해 거의 표준 모드를 추가했습니다.
이론적으로 이것은 매우 직관적 인 스위치 여야합니다. 페이지의 <! docType> 요소가 페이지의 준수 표준 (예 : XHTML1.0)을 가리키면 브라우저가 표준 모드로 전환됩니다. DocType가 지정되지 않았거나 HTML 3.2 및 이전 버전이 지정된 경우 브라우저는 Quirks 모드로 전환됩니다. 이러한 방식으로 브라우저는 표준과 일치하지 않는 구식 웹 페이지를 완전히 포기하지 않고 표준을 올바르게 따르는 문서를 표시 할 수 있습니다. 그러나 다음과 같은 상황이 있습니다.
전체 DocType 선언에는 해당 문서 유형 정의 (DTD) 파일의 URL이 포함되어 있습니다. URL이 손실되거나 지정된 경우 (완전히 자격을 갖춘 인터넷 주소가 아닌) 상대 경로가 지정된 경우, 대부분의 브라우저는 DocType 선언에 의해 지정된 모드에 관계없이 Quirks 모드로 들어갑니다.
브라우저는 DocType 선언의 형식과 형식에 매우 민감합니다. 형식이 잘못된 DocType을 인식 할 수없는 경우 Quirks 모드로 들어가도록 강요합니다 (알려진 올바른 문서를 직접 입력하는 대신 문서에 알려진 올바른 문서를 복사하여 붙여 넣는 것이 좋습니다). DocType 양식의 일반적인 이유는 DocType의 첫 부분과 URL 사이에 공간이 누락 되었기 때문입니다. 두 줄로 나뉘어 진 DocType을 단일 줄로 붕괴 시키면 그 공간이 종종 손실됩니다.
브라우저가 전환 기간을 처리하면 일관되지 않은 문제가 발생할 가능성이 높습니다. IE 및 Opera 사용 표준 모드; Safari 사용 모드의 Netscape 6 이상의 버전; Netscape 7, Mozilla 1 및 최신 버전의 Safari는 Netscape의 거의 표준 모드를 사용합니다.
브라우저가 인식 할 수없는 DocTypes를 처리 할 때 불일치가 있습니다. IE와 Opera는 표준 모드로 들어갑니다. 다시 말해, 인식되지 않은 DocType은 브라우저에 통합되지 않은 새로운 표준이라고 가정합니다. 반대로, Netscape 6은 인식되지 않은 Doctypes를 만나면 Quirks 모드로 전환됩니다.
DocType Switching은 다양한 브라우저에서 불일치를 발견하고 다양한 문제를 적극적으로 피할 수있는 경우 브라우저가 올바른 렌더링 모드에 들어가서 웹 페이지를 올바르게 표시하는 효과적인 수단 일 수 있습니다.
1. 위의 DocType 선언에 따라 바로 다음 <html> 요소에 배치 된 XHTML 네임 스페이스 선언이 다음과 같이 작성되었습니다.
<html xmlns = http : //www.w3.org/1999/xhtml>
2. XHTML 1.0 페이지는 합법적 인 XML 문서이고 XML은 태그와 속성에 예시 적이므로 단순성을 위해 XHTML 1.0 페이지의 모든 태그와 속성은 소문자 여야합니다.
html tidy (http://tidy.sourceforge.net/)와 같은 일부 무료 도구를 사용하면 태그와 속성을 소문자로 자동 변환하는 데 도움이 될 수 있습니다.
3. <head> 요소에 <meta> 요소를 추가하여 페이지에 사용 된 언어를 선언합니다.
<meta http-equiv = content-type content = text/html; charset = gbk />
4. XHTML에서 모든 속성을 인용해야합니다.
html tidy (http://tidy.sourceforge.net/)와 같은 일부 무료 도구는 모든 속성에 대한 견적을 자동으로 넣는 데 도움이 될 수 있습니다.
5. XHTML에서 모든 속성에는 값이 있어야합니다.
HTML 4.0에서처럼 쓸 수 없습니다.
<입력 유형 = 확인란 이름 = 셔츠 값 = 중간 점검>
그리고 쓰기 :
<입력 유형 = 확인란 이름 = 셔츠 값 = 중간 점검 = 확인 />
6. XHTML에서 모든 태그를 닫아야합니다.
태그를 닫는 두 가지 방법이 있습니다. 내용이 포함 된 태그는 엔드 태그를 사용하여 닫히고 빈 태그 다음에 공간 및 /가 뒤 따릅니다. 예를 들어:
<p> 이것은 허용 가능한 HTML이며 유효한 XHTML입니다. </p>
<img src = logo.gif />
7. 댓글 내용에 사용하지 마십시오.
- XHTML 주석의 시작과 끝에서만 사용할 수 있으며 주석 내용에는 표시가 없습니다. 다음과 같은 글쓰기 방법은 허용되지 않습니다.
<!-무효-아래의 고전적인 분리기도 있습니다. ->
<! ------------------------------>
8. HTML은 모든 특수 기호를 인코딩합니다.
W3C, XHTML/CSS/DOM의 세 가지 사양은 완전하고 엄격한 시스템을 형성합니다. 나는이 세 가지 사양을 웹 세계에서 삼위 일체 신의 화신이라고 부릅니다. 이 세 가지 사양은 웹 페이지의 구조, 프레젠테이션 및 동작의 세 부분을 나타냅니다. 웹 페이지를이 세 가지 레이어로 엄격하게 나누고 각 계층의 내용을 서로 독립적으로 만들어 페이지의 재사용 성과 모듈성을 향상시키고 페이지 제작, 유지 보수 및 수정 비용을 크게 줄입니다. 위에서 언급 한 계층 구조를 달성하려면 XHTML에 작성된 XHTML에는 구조 관련 태그 (요소 및 속성) 만 포함되어야합니다. 따라서 엄격한 유형의 DTD를 사용하는 데 익숙해 져야하며 가능한 빨리 표현적인 의미를 가진 마커를 포기해야합니다 (마커는 HTML 4.0 사양에서 권장되지 않으며 XHTML 이후 버전에서 완전히 폐기됩니다). 가능한 빨리 테이블을 기반으로 한 오래된 레이아웃 방법을 포기하고 완전한 CSS 레이아웃을 채택하십시오.
Chuck Musciano & Bill Kennedy의 "HTML 및 XHTML에 대한 권위있는 가이드".
Chelsea Valentine & Chris Minnick의 "XHTML 튜토리얼".
Jeffrey Zeldman의 "웹 사이트 리팩토링".
저자 : Zhang Ziqiu
출처 : http://www.cnblogs.com/zhangziqiu/