web-dev-qa-db-ja.com

コードに<!DOCTYPE html>を挿入しないとどうなりますか?大きな変更はありますか?

だから私はhtmlを使っていくつかのプロジェクトに取り組んでいて、時々<!DOCTYPE html>。大きな変更や目立つ変更はありますか?

16
Maxemoss

<!DOCTYPE>宣言は、HTML文書のタグの前の最初の部分でなければなりません。

<!DOCTYPE>宣言はHTMLタグではありません。これは、ページが記述されているHTMLのバージョンに関するWebブラウザーへの指示です。

多くのIDEで、ユーザーはこれを省略してデフォルトを特定のHTMLスタイルに設定できますが、省略した場合、ブラウザーの互換性と古いバージョンのHTMLの使用に潜在的な脅威が生じます。

たとえば、<article>が宣言されていない場合、< footer ><header><nav><section><!DOCTYPE>などのHTML5の新しい機能とタグはサポートされない場合があります。

さらに、ブラウザは自動的に QuirksモードまたはStrictモードに移行することを決定する場合があります

21
steviejay

従来の理由からDOCTYPEが必要です。

省略した場合、ブラウザは一部の仕様と互換性のない別のレンダリングモードを使用する傾向があります。

ドキュメントにDOCTYPEを含めることで、ブラウザが関連する仕様に従って最善の努力を払うようになります。

詳細: http://www.w3.org/TR/html5/syntax.html

4
M.chaudhry

HTMLドキュメントでは、ブラウザーはドキュメントの最初にDOCTYPEを使用して、互換モードまたは標準モードのどちらで処理するかを決定します。

<!DOCTYPE html> // Tells the browser that we are using HTML5.

ドキュメントタイプが指定されていない場合、ブラウザはQuirksモードになります。互換モードはWebブラウザーのバージョンによって異なります。古いバージョンの場合、HTML5タグはサポートされません(例:ヘッダータグ、フッタータグ、セクションタグなど)。

互換モードと標準モードの違いを確認するには、次のページにアクセスしてください。 https://developer.mozilla.org/en-US/docs/Web/HTML/Quirks_Mode_and_Standards_Mode

これを試したい場合は、以下のコードを使用して、使用せずに

<!DOCTYPE html> 

IE 8以前のような古いブラウザで

   `<video controls>
       <source src="../videos/big_buck_bunny.mp4" type="video/mp4">
       <p>Your browser does not support H.264/MP4.</p>
    </video>`       

//注:上記のコードでは、src = "コンピュータにローカルのmp4ビデオリンクを提供します"

4
Muthu Kumar