BlogでHTML日進月歩

HTML及びCSSの理解を深め、Webサイト作成初級者からの脱却を目指します。

エントリー記事

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

このページの一番上へ

HTML4.01に準拠

XHTMLにおける初めての文書型であるXHTML1.0は、HTML4.01を最形式化したものです。このため、HTML4.01の仕様に準拠していない文書をXHTMLに適合させることは困難です。ここでは、HTML4.01の仕様について簡単に触れてみたいと思います(*1)

HTML4.01の文書型宣言
  1. HTML4.01 Strict(厳密型)

    W3Cの仕様に厳密に従っていることを宣言するものです。見栄えを指定するもの等、非推奨とされている要素や属性及びフレーム関連要素を使用することはできません。

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

  2. HTML4.01 Transitional(移行型)

    古いブラウザとの互換性を保つため、非推奨とされている要素や属性を使用することができます。

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

  3. HTML4.01 Frameset(フレーム設定型)

    frameset要素を用いてフレームを指定する際に用います。フレーム関連要素はStrict(厳密型)で定義されていないため、中のhtmlファイルはTransitional(移行型)を宣言します。

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

内容モデル定義

要素の多くはブロック要素インライン要素に分類されます。直接の子要素として持つことのできる要素はそれぞれ異なります(*2)。以下に一例を挙げてみます。

  1. h1~h6要素p要素address要素等の要素は、ブロック要素を子要素とすることができません。
  2. blockquote要素form要素noscript要素等の要素は、インライン要素を直接の子要素とすることができません。
  3. a要素form要素等の要素は、入れ子にすることができません。
  4. body要素の直接の子要素としてインライン要素を指定することは、Strict(厳密型)では許可されていません。
整形式で記述
親要素と子要素の区別が明確でない記述は、正しく解釈されない恐れがあります。
間違った例
これは<a><em>間違った記述の一例</a>です。</em>
正しい例
これが<em><a>正しい記述の一例</a>です。</em>
画像の代替テキスト
img要素にはalt属性による代替テキストが必須です。代替テキストは、画像が表示されない環境においても意味が通じるものにしましょう。装飾用画像のように代替テキストが不必要な場合にはalt=""としますが、スタイルシートで背景画像として指定することにより、構造と見た目を分離することができます。
文字実体参照
CGIスクリプト等においてフォームデータを送信する際、データの区切りに「&」(アンパサンド)が用いられますが、これは文字実体参照の開始点と解釈される恐れがあります。これを解決するためには、文字実体参照を用いて「&amp;」と記述する必要があります。
(*1)
仕様の詳細につきましては、HTML 4.01 specification又はHTML 4.01 仕様書邦訳をご覧ください。
(*2)
ブロック要素インライン要素の子要素にはなりません。
スポンサーサイト

このページの一番上へ

連絡先、広告

copyright © 2005-2006 セロリ
Powered by FC2ブログ.
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。