Web標準Blogでは、Web標準の利用に興味のあるWebサイト管理者、Webデザイナーの方向けに、Web標準を利用するための手法やノウハウ、参考になるリソース等を、国内外を問わずご紹介します。
なお当Blogでは、Web標準に関する疑問や質問を募集しています。Webコンテンツ実装プロセスにまつわるお悩みでも結構ですので、お気軽に電子メールでstandards@mitsue.co.jp宛にお送りください。
2005年10月07日
h1要素とimg要素
フロントエンド・エンジニア 木達
以下のようなご質問をいただきました。
img要素をh1要素でマークアップすることはWeb標準の観点からして正しいのでしょうか?
ブロックレベル要素の中にインライン要素が入る形になるので構造上は問題ないと思うのですが、本来hx要素には見出しとなるテキストを包括するのが正しいと認識しています。
img要素をh1要素でマークアップすること
は、正しいか正しくないかの二者択一で答えるならば、「正しい」と思います。質問者の方もお書きになっているように構造上は問題ない
ですし、仕様上もまったく問題なく、そのようなマークアップは文法的に妥当だからです。
テキストを包括するのが正しい
とお書きになっていますが、DTD(文書型定義)を確認する限り、正確にはインライン要素を包含するという表現になるかと思います。見出しとなるテキスト
といいますのは、#PCDATAに相当すると察しますが、これはDTDの内容モデルにおいてインライン要素に含まれています。
なお、SEO(検索エンジン最適化)の観点から、img要素をh1要素でマークアップするのは好ましくないといった話を聞いたことがあります。筆者自身はimg要素のalt属性値を読み取らない検索エンジンというものを確認してはいませんが、検索エンジン側の仕様は頻繁に変化しているようですし、そもそもそのような要因に合わせてマークアップを変えるというのは奇異に感じます。
コメント
これは、h1要素の中に、img要素だけが入った状態でもいいのかという質問と解釈しました。答えとしては、書かれている通り文法上「正しい」ので問題ないってことになりますが、alt属性の内容がh1要素の内容として妥当なものであれば、という前提が必要ですね。
Posted by: yuu : 2005年10月11日 10:45
yuuさま、補足をありがとうございます。img要素を使用するからには、当然ながら適切なalt属性値が必要となります。
Posted by: ミツエーリンクス : 2005年10月11日 16:30
とても参考になりました。
いろんなサイト探してもこれだけ詳しく書いている
サイトはなかったです。
ありがとうございました!
Posted by: h1内のimg : 2006年11月09日 04:29
