abbr & acronym・em & strong
似たような意味のある要素をいかにして使い分けるか、というお話。
abbr 要素と acronym 要素
abbr 要素と acronym 要素は、どちらも略語を示すもので、今まで一般的には、
- abbr 要素は略語一般
- acronym 要素は頭字語のみ
という使い分けがされてきたが、実際のところ、明確な区別がハッキリしないままになっていた。
しかし、XHTML2.0 や、(2008年2月12日現在) 草案としてリリースされている HTML5 では acronym 要素は削除されており、略語は abbr 要素のみを使うように奨められている。
2つを明確に区別する重要性・必要性がほとんどないこと、acronym 要素が正式に廃止予定であることから abbr 要素のみを利用していきたいところだ。しかし、IE6 などのブラウザは abbr 要素に対応しておらず、適切な表示がされない (IE7 以降やその他のブラウザの多くは対応している)。IE6 では、逆に acronym 要素には対応しており、適切な表示が行われている。
abbr 要素をきちんと表示できないブラウザがまだ多い中で abbr 要素を利用していくには、
- abbr 要素内に span 要素を入れて、そちらに反応させる
- abbr 要素を再生成させるスクリプトを利用する
- (対応していない旧ブラウザを見捨てる)
などの方法があるので、こういった方法でしのごう。
結論 : abbr 要素だけ使ってればいい。
em 要素と strong 要素
em 要素と strong 要素はどちらも強調で、今までの仕様では、
- em 要素は強調
- strong 要素はさらに強調
という説明がされていた。
しかし、HTML5 草案では、strong 要素は「強調というよりはむしろ重要性を表すようになる」という説明になっている。
このことから、2つの要素の意味は、次のように解釈できる。
- em 要素
-
強勢や異調という意味での強調。一般的なスタイルとしては、圏点や傍点、括弧にあたる。
- strong 要素
-
重要性の高さを示す、という意味での強調。一般的なスタイルとしては、太字にあたる。
一般的なブラウザで、em 要素が斜体、strong 要素が太字で表示されること、英語の本での斜体と太字の使われ方を考えると、こういう解釈が適当であろう。