DOCTYPEは常に無視されます

高洛峰
高洛峰オリジナル
2017-02-15 13:58:191675ブラウズ

用語の説明

  • DTD: Document Type Definition ドキュメントタイプ定義

  • SGML: Standard Generalized Markup Language 標準汎用マークアップ言語。

SGML は非常に強力ですが複雑なマークアップ言語であり、HTML と XML はそこから派生しています。

ステートメントは HTML タグではないのはなぜですか?

宣言は HTML ドキュメントの最初の行、 タグの前に配置する必要があります

の役割は何ですか?

このドキュメントを解析するためにどの標準を使用するかをブラウザーに指示します。 DOCTYPE が存在しないか、形式が正しくない場合、ドキュメントは互換モードで表示されます。

HTML4.01 と HTML5 DOCTYPE の違いは何ですか?

HTML5 には の宣言が 1 つだけあります。

HTML4.01 には、strict、transitional、frameset の 3 つの宣言があります

HTML4.01 は SGML に基づいており、ブラウザにドキュメント タイプを通知するために DTD を参照する必要があります。使用済み。
HTML5 は SGML に基づいていないため、DTD を参照する必要はありませんが、ブラウザの動作を標準化するために DOCTYPE を使用する必要があります。


SGML は最も強力で古く、HTML は元々 SGML のサブセットになろうとしましたが、HTML 4 は以前は SGML の標準に厳密に準拠していませんでした。その後、HTML4、XHTML (XML 標準に準拠した HTML) が登場し、どちらも SGML の要件に準拠しました。

HTML5 標準を策定する際、W3C は SGML のいくつかの無駄な関数と宣言を取り除き、XHTML の厳密なスタイルではなく HTML4 のスタイルを継続したいと考えています。

ページのレンダリングモード

ページのレンダリングモードは、DOCTYPEが宣言されているかどうかに応じて、それぞれ互換モードと標準モードをトリガーします。

document.compatMode は、現在のページの互換モードを返すことができます。

document.compatMode
> CSS1Compat  //标准模式
> BackCompat  //怪异模式、兼容模式

標準モードのページ レイアウトと JS 実行モードは、ブラウザーでサポートされる最高の標準で実行されます。
互換モードでは、サイトが機能しなくなるのを防ぐために、古いブラウザーの動作をシミュレートして、緩やかな下位互換性のある方法でページが表示されます。

いつも無視されている DOCTYPE 関連の記事については、PHP 中国語 Web サイトに注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。