alt属性 (英語 : alt attribute )はHTML とXHTML で使われるHTML属性 。HTML要素 が表示できないときに代わりにレンダリング されるテキスト (いわゆる代替テキスト 、英語 : alternative text/alt text )を指定する。
この属性はHTML 2.0で導入され[ 2] 、HTML 4.01以降ではimg
要素とarea
要素において必須となった[ 3] 。またinput
要素と非推奨 のapplet
要素でも指定できるが、こちらは省略できる。
alt
属性を指定する目的は大きく2つある。1つは検索エンジンや生成AIなどが画像(img
要素)やリンク先(area
要素)の意味 を解釈できるようにマシンリーダビリティ を確保するためである。もう1つは視覚的に情報が得られない人(視覚障害者 や、一時的に画面を見ることができない環境にいる人など)が代替情報としてその内容を知ることができるようにアクセシビリティ を確保するためである。
img
要素におけるalt
属性については、必ずしも意味のあるテキストを指定する必要はなく、alt=""
のように空文字列を指定することもできる[ 4] 。ただし、alt属性がないこと とalt属性値が空文字列であること は意味が異なるので注意する必要がある。
alt属性の例
例えば、ここにalt
属性に「赤 い背景に白 い十字 の旗 が空 をはためいており、旗の十字の縦棒はやや旗竿に寄っている。」を指定した画像がある。
HTML において、これは下記のように実装できる。
< img alt = "赤い背景に白い十字の旗が空をはためいており、旗の十字の縦棒はやや旗竿に寄っている。" src = "https://upload.wikimedia.org/wikipedia/commons/thumb/8/83/Dannebrog.jpg/180px-Dannebrog.jpg" >
Orca などのスクリーンリーダー を使う視覚障害者 は画像を見る代わりに代替テキストを聞ける。またLynx などテキストベース のウェブブラウザ では画像の代わりに代替テキストを表示する。GUI ベースのブラウザは一般的には画像のみを表示し、ユーザーが明示的に画像のプロパティを表示させたり、ブラウザの設定で画像を表示しないようにしたり、何らかの原因で画像を取得できないかデコードできない場合のみ代替テキストを表示させる。
上記の長い代替テキストの代わりに、簡潔に「デンマークの国旗 」とだけ指定することもできる。
一般的な誤解
警告標示
alt
属性には必ずしも画像の内容を記述する必要はなく、文脈、画像を置く目的、そして画像が見えない人にとって代わりにどんな文字列を表示するのが最も役に立つのも考慮すべきである。代替テキストとはすなわち画像の「代替」となるものなので、一般的には画像の目的を記述することが多い。例えば、警告標示の画像の代替テキストは「黄色い背景の三角に黒い枠、真ん中に感嘆符 」ではなく、シンプルに「警告!」にすべきである。なお、主題が警告標示の形である場合、前者の代替テキストのほうが適切といえる。
Internet Explorer 7 はalt属性をツールチップ としてレンダリングする。
Internet Explorer 7およびそれ以前のバージョンではalt属性をツールチップ としてレンダリングするが、これは規格に合致しない実装である[ 5] [ 6] 。この実装により、多くのウェブデベロッパー (英語版 ) がalt属性を誤用し、画像の追加情報をツールチップで表示させるためにその情報をalt属性で記述するという状況が発生した[ 7] 。まさにこの目的のためにtitle
という属性があるにもかかわらずである[ 8] 。なお、この問題はInternet Explorer 8 で修正され、alt属性がツールチップとしてレンダリングされることはなくなった[ 9] 。
alt属性の間違いとして「altタグ」(英 : alt tag )と呼称されることがある[ 6] [ 10] [ 11] 。
装飾用の画像
W3C の勧告では情報を持たない装飾用の画像はHTMLのマークアップではなくCSS で指定するべきとしている[ 12] 。しかし、時には装飾用の画像をHTMLのimg
要素で指定しなければならないときもあり、そのときはalt=""
のように代替テキストを空文字列にすべきとしている[ 13] 。このように指定した場合、スクリーンリーダーやテキストベースブラウザの利用者は装飾用の画像の代替テキストに邪魔されずにページを閲覧することができる。なお、仕様に従わずに空文字列ではなくalt
属性自体を指定しなかった場合、ほとんどのブラウザは何も表示しないのではなく、画像のURL 、または何らかの固定文字列を表示する。
関連項目
脚注
外部リンク