var _gaq = _gaq || []; _gaq.push([\'_setAccount\', \'UA-13211647-1\']); _gaq.push([\'_trackPageview\']); (function() { var ga = document.createElement(\'script\'); ga.type = \'text/javascript\'; ga.async = true; ga.src = (\'https:\' == document.location.protocol ? \'https://ssl\' : \'http://www\') + \'.google-analytics.com/ga.js\'; var s = document.getElementsByTagName(\'script\')[0]; s.parentNode.insertBefore(ga, s); })();

HTML5: img 要素の alt 属性 の仕様

HTML5

概要

HTML5 では img 要素の alt 属性の仕様が大幅に変更され、HTML4/XHTML と比較すると定義がかなり詳細化されている。

HTML5 における alt 属性 の仕様を概略すると次のようになる。

  • alt 属性には画像を置換可能な詳細な代替テキストを指定する
    • HTML4/XHTML の alt 属性は短い説明 (alt テキスト) だったが HTML5 の alt 属性は長い説明 (title 属性よりは longdesc 属性に近い ())
    • 画像の情報量 ≒ alt 属性に指定する代替テキストの情報量
  • 特定の条件を満たせば alt 属性を省略することができる

※ HTML5 の仕様はワーキングドラフトでまだ勧告されてはいないが、既にラストコール (最終草案) のため alt 属性の仕様が変更されることはないと思われる。

alt 属性に指定する代替テキスト

HTML4/XHTML の alt 属性は画像に関する短い説明 (キャプション、タイトル、簡単な説明など) を表し、役割としては title 属性とはあまり区別されずに使われていることが多い ()。しかし HTML5 では画像を alt 属性で置き換えても前後の意味が変わらない代替テキストを指定する必要があり、役割としては longdesc 属性に近いものになっている。

※ alt 属性に詳細な (画像と同等の) 代替テキストを指定することは仕様であってガイドラインではないことに注意。

空文字列の代替テキスト

次のような場合は空文字列の alt 属性 (alt=””) を指定する必要がある。(MUST)

  • 画像と同等のテキストの隣にあるアイコンやロゴ
  • 前後のテキストを補足しているだけで削除しても問題のない画像
  • 情報として意味のない (情報量のない) 装飾的な画像
  • 複数の画像をつなぎ合わせた場合の最初以外の画像 (最初の画像は代替テキストを指定する)
  • 表示目的でない画像 (アクセスカウント用の width=0, height=0 の画像など)

alt 属性の省略

次のような場合は alt 属性を省略することができる。(MAY)

  • 画像内容が不明な場合 (自動取得/生成やユーザー投稿など) で、かつ次のいずれかの条件を満たす場合
    • img 要素に空文字列でない title 属性がある
    • 空白でない legend figcaption 要素を含む figure 要素内に img 要素がある
    • img 要素が見出し (セクション) 内の唯一の内容となっている
  • 画像が閲覧不可な環境 (低速回線やテキスト/音声ブラウザーなど) で、かつ利用可能な代替テキストがない場合
  • 画像が閲覧可能な人に向けたプライベートな文書や HTML メール
    • ただし代替テキストを指定することが強く推奨される

※ 単純 (無条件) に alt 属性を省略できる訳ではないのでHTML5 では alt 属性は必須ではなく省略可能という説明は適切でない。また HTML5 の仕様に従うと alt 属性の記述は非常に大変になるが、それを alt 属性省略の理由とすることは許されていない。

訂正:HTML4/XHTML の alt 属性について

HTML4/XHTML の alt 属性は title 属性に近かったが HTML5 の alt 属性は longdesc 属性に近い

HTML4/XHTML の alt 属性は画像の補足的な情報 (キャプション、タイトル、簡単な説明など) を表し、役割としては title 属性とあまり変わらない仕様となっていた。

仕様に関する記述としては適切でなかったため、訂正して補足しておきます。(alt 属性と title 属性の仕様が同じ/似ているという意味ではなく、現状では使われ方が似ている/区別されていないという意味合いでした。)

HTML4/XHTML の仕様では alt 属性には代替テキストを指定するが、次のような点から HTML4/XHTML の alt 属性と title 属性が明確に使い分けされていることは少なく、現状では title 属性に近い使われ方になっていることが多い。

※ 参考:alt 属性関連のリンク

Post Tagged with ,

4 Responses so far.

  1. OC Bookmarks より:

    HTML5: img 要素の alt 属性 の仕様 | attosoft.info Blog

    alt=”画像概要”
    だったのが
    alt=”画像詳細”
    となるということかしら?
    alt属性の省略も場合によっては可となるもよう。

  2. […] HTML5: img 要素の alt 属性 の仕様 | attosoft.info Blog […]

OC Bookmarks へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。