HTMLタグが持つ意味

HTMLのタグにはW3Cが定めたルールがありますが、それっぽく見えれば良いじゃないかと気にしてない人はそれなりにいると思います。例えば h1 というタグは見出しを示すものですが「これを使えば文字を大きく表示させられる」という理由だけで使っていたり。

確かに通常のブラウザで人が見る分には、見た目で「これが見出しで、こっちが本文かな」と分かりますが、コンピューター的には解釈出来ていません。解釈出来ないと困るケースの極端な例では読み上げソフト。タグを解釈して読み上げるので本文読み上げ中に突然「見出しー○○○」と読み上げられたらチンプンカンプンです。

読み上げソフトに限らず、検索サイト等のように他サイトから部分的に要素を抽出するようなクローラー(ボット)にしても、抽出部分はタグ(など)から判断しますので、抽出先にて「見出し」として取り出した内容が表示された場合に、チンプンカンプンの内容が表示されることもあるわけです。

タグは視覚的な用途で存在する物もありますが、意味として存在しているタグも多数あります。確かに後者のタグにおいても、ブラウザは何がしかの見た目の違いを持たせていますが、大事なのは意味の方であって、見た目はCSSで自由に変更構わないわけです。例えば h1 は大きな文字で表示されますが、大事なのは「最上位の見出し」という意味の方であって、CSSで小さな文字にしても問題ありません。

セマンティックHTMLを目指すHTML 5にも意味を持たせたタグが多数追加されています。現状のブラウザではそれらを使っても見た目上は何ら変わりませんが、もしかすると今後何がしかの見た目がデフォルトで設定されるかもしれません。しかしあくまで重要なのはそのタグが持つ意味の方であることを意識して使わないといけません。

昨今のWebは誰もが情報を置く事ができるようになったことで、データ量が飛躍的に膨れ上がっており、これを効率良く利用するためにはコンピューターによる解釈が重要となってきます。そのためにもユーザーが作り出すデータ側でコンピューターに解釈しやすいデータ作りをしていくことで、結果的にユーザー側の為となるものと思います。