HTMLファイルを制作するにあたって、まず初めに行うDOCTYPE宣言についての簡単な説明です。この宣言を的確に行うことで正しくブラウザーに認識させます。
記述内容は決まっているので暗記する必要はありません。必要に応じた宣言をコピペで貼付けるだけで大丈夫です。特に指定が無ければHTMLは「 HTML 4.01 Transitional 」で制作すると良いかもしれません。
目次
DOCTYPE宣言とは
DOCTYPE宣言を行うことでHTMLで記述することのできる要素のルールが変わります。
IE6以降は記述することでCSSの扱いが変わってきます。宣言の記述をしなくても表示はされます。
ブラウザには『標準モード』と『互換モード』という機能がついています。Transitionalの場合に、DOCTYPE宣言にURIを含めないことで互換モードとなります。宣言がされていない場合も互換モードになります。
- ●標準モード
- 文法ミスは無視されます。
- ●互換モード
- 文法ミスをカバーしてくれる。
Strict(厳密型)
、Transitional(移行型)
、Frameset(フレーム設定用)
の3種類がありますが、このBlogではStrictとTransitionalのみ記述します。今後の事を考えるとフレームでのサイト制作は賢くないかもしれません。
各HTMLファイルのDOCTYPE宣言の書き方
HTML 4.01 StrictのDOCTYPE宣言
非推奨の要素や属性は使えない。フレームを使用することもできない。
<!-- URI付 ●標準モード --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <!-- URI無し ●標準モード--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
HTML 4.01 TransitionalのDOCTYPE宣言
非推奨の要素や属性が使える。フレームは使用できない。
<!-- URI付 ●標準モード --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!-- URI無し ●互換モード--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
XHTMLファイルのDOCTYPE宣言についての注意
XHTMLで記述する場合、DOCTYPE宣言の前にHTMLにはない『XML宣言』が必要になる。ただしIE6以前のブラウザだとXML宣言以降のDOCTYPE宣言が無視されてしまい強制的に互換モードになってしまう。
文字コードが『UTF-8』の場合はXML宣言が必要ない。文字コードは全体的に『UTF-8』へ移行しているので特に指定が無い場合はUTF-8で記述しよう。どうしても必要な場合はDOCTYPE宣言の後に記述するのもあり。ただしW3C的にはNGが出る。
XHTML 1.0 StrictのDOCTYPE宣言
タグの大文字・小文字を区別する。通常タグは小文字で記述。UTF-8で記述の場合はXML宣言は必要ない。
フレームは使用できない。
<!-- URI付 ●標準モード --> <?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <!-- URI付 ●標準モード --> <?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN">
XHTML 1.0 TransitionalのDOCTYPE宣言
タグの大文字・小文字を区別する。通常タグは小文字で記述。UTF-8で記述の場合はXML宣言は必要ない。
フレームは使用できない。
<!-- URI付 ●標準モード --> <?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!-- URI無し ●互換モード--> <?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
XHTMLの使用を厳密に指定する場合のDOCTYPE宣言
XHTML 1.1
タグの大文字・小文字を区別する。通常タグは小文字で記述。UTF-8で記述の場合はXML宣言は必要ない。
フレームは使用できない。
<!-- URI付--> <?xml version="1.1" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <!-- URI無し--> <?xml version="1.1" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN">
携帯用のXHTMLに関してのDOCTYPE宣言
XHTML BASIC 1.0
タグの大文字・小文字を区別する。通常タグは小文字で記述。UTF-8で記述の場合はXML宣言は必要ない。
フレームは使用できない。
<!-- URI付--> <?xml version="1.1" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd"> <!-- URI無し--> <?xml version="1.1" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN">