Home

電脳麻将UI 〜 VoiceOver対応(1)

電脳麻将UI 〜 VoiceOver対応(0) で説明したように、VoiceOver などのスクリーンリーダーに対応する第一歩は「盤面をたどれば情報が得られる ようにする」ことです。 基本的にはすべての画像に適切な alt属性値を付加すればよいのですが、Chrome に対応しようとすると罠が待っています。


画像の説明がない場合に取得するには、コンテキストメニューを開きます

VoiceOver や NVDA などのスクリーンリーダーで Chrome を使っているときに「ラベルのない画像です」とか「画像の説明がない場合に取得するには、コンテキストメニューを開きます」という読み上げに遭遇したことがある人もいるのではないでしょうか? これは Chrome が

  1. alt属性の文字列が短い(具体的には2文字以下)の場合にそれを「不適切な説明」と解釈し、「ラベルのない画像です」と伝えている
  2. ドキュメントの中で最初に遭遇した「不適切な説明」対し、「コンテキストメニュー」に誘導して Google の提供する画像推定機能を使わせようとしている

ようなのです。 麻雀アプリでは z1 に「トン」という alt属性を設定することは「正しい説明」なのに余計なお世話です。 しかも、あたかもコンテンツに問題があるかのような伝え方をするので混乱します。

この問題を回避するには、何らかの文字を追加して alt属性を3文字以上の文字列にすればいいようです。 電脳麻将では「本場」→「本場:」のように意味のある文字が追加できるときにはそれを追加し、「トン」など追加すべき文字がない場合は ゼロ幅スペース を追加しました。