>  기사  >  웹 프론트엔드  >  DOCTYPE의 역할과 표준 모드와 호환 모드의 차이점에 대한 자세한 소개

DOCTYPE의 역할과 표준 모드와 호환 모드의 차이점에 대한 자세한 소개

高洛峰
高洛峰원래의
2017-03-20 16:09:202531검색

DOCTYPE의 역할과 표준 모드와 호환 모드의 차이점

  1. 선언은 HTML 문서의 선두에 있어야 합니다. , HTML5는 대소문자를 구분하지 않습니다.

  2. 선언은 HTML 태그가 아니지만 브라우저에 현재 HTML 버전

  3. 최신 브라우저의 html 레이아웃 엔진은 문서 유형을 확인하여 문서를 렌더링하기 위해 호환 모드를 사용할지 표준 모드를 ​​사용할지 결정합니다. 표준에 가까운 모델을 갖고 있습니다.

  4. HTML4.01에서 선언은 DTD를 가리킵니다. HTML4.01은 SGML을 기반으로 하기 때문에 DTD는 다음을 보장하기 위한 마크업 규칙을 지정합니다. 브라우저가 콘텐츠를 올바르게 렌더링한다는 것

  5. HTML5는 SGML 기반이 아니므로 DTD를 지정할 필요가 없습니다

표준 간의 차이점 모드 및 호환성 모드: 표준 모드 조판 및 JS 운영 모드는 브라우저에서 지원하는 최고 표준에 따라 실행됩니다. 호환 모드에서는 페이지가 느슨하게 이전 버전과 호환되는 방식으로 표시되어 사이트가 작동하지 않는 것을 방지하기 위해 이전 브라우저의 동작을 시뮬레이션합니다.

구체적인 차이점:
1.박스 모델
엄격 모드: width는 콘텐츠 너비이고 요소의 실제 너비 = 너비입니다.
호환성 모드: 너비는 =너비+패딩+테두리
2. 호환성 모드에서는 인라인 요소의 높이와 너비의 백분율을 설정할 수 있습니다.
표준 모드에서는 너비와 너비를 설정합니다. height와 같은 인라인 요소는 적용되지 않지만 호환 모드에서는 적용됩니다.
표준 모드에서 요소의 높이는 포함된 콘텐츠에 따라 결정됩니다. 상위 요소가 높이를 설정하지 않으면 하위 요소가 백분율 높이를 설정하는 것이 유효하지 않습니다.
3. margin:0 auto를 사용하여 가로 가운데 맞춤을 설정하면 IE에서 작동하지 않습니다.
margin:0 auto를 사용하면 표준 모드에서 요소를 가로 가운데에 맞출 수 있지만 호환 모드에서는 작동하지 않습니다(텍스트 사용). -align 속성 솔루션)
body{text-align:center};#content{text-align:left}
4. 의 글꼴 속성은 상위 레이어의 설정을 상속할 수 없습니다. white-space:pre가 유효하지 않으며 설정된 이미지의 패딩이 유효하지 않습니다

  1. < !doctype> 선언은 HTML 문서의 선두에 있어야 하며, 이 문서를 구문 분석하는 데 사용할 문서 표준을 브라우저의 파서에게 알려야 합니다. 존재하지 않거나 형식이 잘못된 DOCTYPE을 사용하면 문서가 호환 모드에서 렌더링됩니다. HTML5는 대소문자를 구분하지 않습니다.

  2. 선언은 HTML 태그가 아니지만 브라우저에 현재 HTML 버전을 알려주는 데 사용되는 명령입니다.

  3. 최신 브라우저의 html 레이아웃 엔진은 문서 유형을 확인하여 호환 모드를 사용할지 표준 모드를 ​​사용할지 결정합니다.

  4. HTML4.01에서 선언은 DTD를 가리킵니다. HTML4.01은 SGML을 기반으로 하기 때문에 DTD는 브라우저가 콘텐츠를 렌더링하도록 마크업 규칙을 지정합니다.

  5. HTML5는 SGML을 기반으로 하지 않으므로 DTD를 지정할 필요가 없습니다.

표준 모드와 호환 모드의 차이점은 다음과 같습니다. 표준 모드의 형식화 및 JS 작업 모드는 이를 기반으로 하며 브라우저에서 지원하는 가장 높은 표준으로 실행됩니다. 호환 모드에서는 페이지가 느슨하게 이전 버전과 호환되는 방식으로 표시되어 사이트가 작동하지 않는 것을 방지하기 위해 이전 브라우저의 동작을 시뮬레이션합니다.

특정 차이점:
1. 박스 모델
엄격 모드: 너비는 콘텐츠 너비이고 요소의 실제 너비는 너비입니다.
호환 모드: 너비는 =너비+패딩+입니다. border
2. 호환 모드에서는 높이 백분율과 인라인 요소의 높이 및 너비를 설정할 수 있습니다
표준 모드에서는 스팬과 같은 인라인 요소에 대한 너비 및 높이 설정이 적용되지 않지만 호환 모드에서는 적용됩니다. , 적용됩니다.
표준 모드에서 요소의 높이는 포함된 콘텐츠에 따라 결정됩니다. 상위 요소가 높이를 설정하지 않으면 하위 요소가 백분율 높이를 설정하는 것이 유효하지 않습니다.
3. margin:0 auto를 사용하여 가로 가운데 맞춤을 설정하면 IE에서 작동하지 않습니다.
margin:0 auto를 사용하면 표준 모드에서 요소를 가로 가운데에 맞출 수 있지만 호환 모드에서는 작동하지 않습니다(text-align 사용). 속성) 해결 방법)
body{text-align:center};#content{text-align:left}
4. 호환 모드에서 Table의 글꼴 속성은 상위 레이어의 설정을 상속할 수 없으며 흰색 -space:pre는 유효하지 않습니다. 이미지의 패딩 설정은 유효하지 않습니다.

위 내용은 DOCTYPE의 역할과 표준 모드와 호환 모드의 차이점에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.