質問: 最近かなり久々にHTML,CSSを学習しているのですが、昔は見なかった`WAI-ARIA`なる属性を良く目にするようになってきました。 「これは何だ?」と色々と調べてみたのですが、サッパリ分かりません。 このページやこのページなどにも詳しく書いているようなのですが、それで、この属性は必要なのか、いったい何がメリットなのかまでは分かりませんでした。 個人的に良く見るのは、`aria-labelledby`や`aria-hidden`です。 最近のWebページではこれらの属性は必須なのでしょうか? それとも現代のモバイルファースト時代、やはりあった方がいいのでしょうか? 使い方やメリットなど教えていただけたらありがたいです。
回答: 仕様上、必須とされているものではありません。しかし、心遣いとして利用したほうが良いと考えられます。ただしそれはモバイルファーストだけが理由ではありません。 例として `aria-hidden` で説明します。 目の不自由な方達は、スクリーンリーダー(読み上げソフト)を通じて Web コンテンツを利用しています。これらの読み上げソフトはかなり細かく HTML の内容を読み上げてしまうので、装飾的なアイコンなどの要素が大量に使われていると、彼らにとってコンテンツの本題の理解の妨げになってしまいます。 `aria-hidden` はそういったソフトが読み上げる必要がない場所に付けることで、その問題の解決を図るものです。 以前は、彼らがコンテンツを利用するためには点字や人による読み上げなど、決して少なくない人手・コストが必要でした。そのためにどうしても流通の遅延や、介護者に対する気後れなどから、コンテンツと疎遠にならざるをえませんでした。それがコンピューターの登場と自動読み上げ技術の発達により、大きく改善されました。 その方向性を Web に適用したものが WAI-ARIA になります。つまりメリットは、障害者などを含めた、より多くの人に利用しやすいコンテンツを提供できる、ということになります。