1. ホーム
  2. Web制作
  3. HTML/Xhtml

HTML版宣言DOCTYPEタグ

2022-01-26 01:25:03

普通のウェブサイトのソースコードを開くと、ソースコードは必ず <!DOCTYPE html で始まり、この <!DOCTYPE> の後に、いくつかの > が直接追加されていて、次のように長い文章になっているものがあることがわかるでしょう。

<!DOCTYPE html PUBLIC "-/W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<html xmlns="http://www.w3.org/1999/xhtml">


もちろん、Evey Technology のソースコードなど、より主流の Web ソースコードは HTML5 形式で、直接 <!DOCTYPE html> で始まっています。 <!DOCTYPE html> HTMLタグではないので、ページを書くのに使われたマークアップのバージョンをブラウザに伝えるだけのブラウザ指令なので、ペアで登場する必要はありません。DOCTYPE html>は、どのバージョンでも大文字と小文字を区別しませんが、慣例として "<!DOCTYPE html>" と書きますが、もちろんW3C標準に準拠するには、 "<!doctype html>" と書いても問題ないようです。


HTML5宣言を使用したEvey Technologyホームページのソースコード+HTML4対応

DOCTYPEとは英語で文書型、つまりHTMLのバージョン型宣言を意味します。HTMLは最初から仕様がなく、より一般的なHTML4を経て、HTML5の時代になると、各時代の仕様が異なり、例えば、HTMLの以前のバージョンでは、<br>改行を実現できない。これは、HTMLタグはペアで表示しなければならないため、<br/>で表現しなければならないからです。つまり、<br/>で表現する必要があったのです。この概念はHTML4以降、末尾に"/"があってもなくても曖昧になりました。HTML5では、もはや"/"は不要で、直接<br>で表現することになりました。

このような紛らわしい解釈方法には、ページで使用されているHTMlコードの現在のバージョンをブラウザに伝える必要があります。

すべてのHTML文書でDOCTYPEを指定し、どのような種類の文書が期待されているかをブラウザに知らせることが重要である。

HTML 4.01のDOCTYPEは、HTML 4.01がSGMLに基づいているため、DTDを参照する必要があります。HTML 5はSGMLをベースにしていないので、DTDへの参照は必要ありませんが、doctypeはブラウザの動作を規制する(ブラウザをあるべきように動作させる)ために必要です。

HTMLバージョン宣言

HTML 5には文書型がありませんが、フレームの使用は避けた方が良いでしょう。XHTML 1.0では、3つのXML文書型が規定されています。Strict、Transitional、Frameset; HTML 4.01は3つの文書型を規定しています。Strict、Transitional、Framesetの3つの文書型を規定しています。

HTML 5 仕様書

この表現は簡潔で、属性は1つだけです: ルート要素は html

<!DOCTYPE html>


XHTML 1.0 Strict DTD 厳格版

このタイプは、プレゼンテーション層の乱雑さを排除したクリーンなマークアップが必要な場合に使用する。Cascading Style Sheets (CSS)と一緒に使用します。

<!DOCTYPE html
PUBLIC "-/W3C//DTD XHTML 1.0 Strict//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">


上記の宣言では、文書のルート要素をhtmlと宣言していますが、これは公開識別子が "-/W3C//DTD XHTML 1.0 Strict///EN" として定義されたDTDで定義されています。ブラウザは、この公開識別子と一致するDTDを見つける方法を理解し、見つからない場合は、公開識別子に続くURLをDTDを見つける場所として使用します。

XHTML 1.0 Transitional DTD トランジショナル

Transitional DTDは、W3Cがスタイル・シートに移行することを期待しているレンダリング属性と要素を含むことができます。読者がカスケーディング・スタイル・シート(CSS)をサポートしていないブラウザを使っていて、XHTMLレンダリング機能を使わざるを得ない場合に、このタイプを使用します。

<!DOCTYPE html
PUBLIC "-/W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


XHTML 1.0 フレームセット DTD フレームワーク編

フレームを使いたいときはこのDTDを使おう!

<!DOCTYPE html
PUBLIC "-/W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">


HTML4.1 Transitional DTD Transitionalバージョン

Transitional DTDは、W3Cがスタイル・シートに移行することを期待しているレンダリング属性と要素を含むことができます。読者がカスケーディング・スタイル・シート(CSS)をサポートしていないブラウザを使用していて、HTMLのレンダリング機能を使用しなければならない場合に、このタイプを使用します。

<!DOCTYPE HTML PUBLIC "-/W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd">

HTML 4.1 Strict DTD 厳格版

このタイプは、プレゼンテーション層の乱雑さを排除した、クリーンなマークアップが必要な場合に使用します。Cascading Style Sheets (CSS)と組み合わせて使用します。

<!DOCTYPE HTML PUBLIC "-/W3C//DTD HTML 4.01//EN" "
http://www.w3.org/TR/html4/strict.dtd">

HTML 4.01 フレームセット DTD フレームワーク文書

フレームを使用する文書には、フレームセットDTDを使用する必要があります。Frameset DTDは、frameset要素がbody要素に取って代わることを除けば、Transitional DTDと同等である。

<!DOCTYPE HTML PUBLIC "-/W3C//DTD HTML 4.01 Frameset//EN" "
http://www.w3.org/TR/html4/frameset.dtd">