HTMLに「role属性」を付与してWebアクセシビリティの向上を目指す

  • このエントリーをはてなブックマークに追加

今日は、HTML5より正式に採用された「role属性」について書きたいと思います。

role属性とは

role属性は、このように使用します。

見ればどういったものかなんとなく分かると思いますが、この場合はdiv要素に対して「ナビゲーション」の意味を付与しています。


では、実装する必要はあるのか

2016年04月に「障害を理由とする差別の解消の推進に関する法律」が施行されました。「障害を理由とする差別」の解消に努めるという主旨の施策なのですが、その中に「情報アクセシビリティ」も含まれているため、今後WEBの現場においても、そういった対策を求められる場合が増えてくると言えるでしょう。
一部の音声読み上げソフトでrole属性まで読み上げてくれるものが存在します。公共性の高いサイトであれば積極的に、実装したいですね。

SEOの観点から見た場合の効果は不明です。現状は効果が無いと考えて良いと思います。JIS規格(2016年に更新されましたね)にも記述はありません。
大手企業でもWebアクセシビリティの観点から、実装をしているサイトが増えてきているのが現状です。広く普及するようになればあるいは、といった感じで、今後の展開が期待されています。

しかし、role属性自体は補助的な役割をするので、タグ事態に意味を持つHTML5で構成するのであれば、あまり記述する機会は必要ないかもしれません。多分3種しか使用しません。(後述します)

実装方法

先述と同様、タグにrole属性を付与します。


あくまでrole属性は補助的な役割なので、navタグなどの既にナビゲーションの意味を持っているタグへの実装は今後非推奨となっていくようです。divやspanなどの特に意味を持たないタグに対して積極的に実装するとしても、古いブラウザも多く存在するので迷うところですが、HTML5で実装するのであれば外してしまっても良いのではというのが私の見解です。
ちなみにこちらで細かく、つけるべき、つけないべきの定義がリスト化されています。(複雑ですね…)

role属性の種類

計60個のrole属性が存在するのですが、ランドマークロールのカテゴリに分類される8つを押さえておけば良いと思います。
※HTML5でマークアップするのであれば、さらに絞って、application/form/search以外は必要ないかと思います。ランドマーク以外の細かい部分も勉強しても良いかもしれませんね。

application アプリケーション。
キーボードまたはジェスチャーイベントなどの、ユーザー入力を要求する1つ以上の、との条件があります。
banner ヘッダ。基本的にページに1つだけ使用。
主にサイト中心のコンテンツが含まれる領域(ページ固有のコンテンツではない部分)
complementary ドキュメントを補助する情報。
mainコンテンツから切り離された箇所に存在する、mainを補足する役割の領域。
contentinfo copyrightや、プライバシーポリシーへのリンクを含む領域。
form 検索以外の、フォームを含む領域。
main メインコンテンツ領域。
navigation ナビゲーション領域。
search 検索フォームを含む領域。

さらに細かい内容はこちら確認してください。


執筆者:森島[ WEBデザイナー ]

8bit デザイナーです。 デザイン・マークアップ・映像制作など幅広く担当しています。

関連記事

プログラミング

iOSアプリでREST APIを使うお話

前回のREST APIをiOSアプリでも使うお話です。 こちらも割と簡単ですが、Kotlin=Javaに比べると型に関してはシビアです。 目次1 インストール1.1 CocoaPodsでインストールする。2 使い方2.1 GETの場合2.2 POSTの場合 インストール CocoaPodsでインストールする。 ライブラリが対応していれば簡単ですね。 その後、 これでインストール完了です。 使い方 こちらもAndroidの時と同じような感じでできますが、今回はModelでデータ […]

プログラミング

AndroidでREST APIを取り扱うお話

前回のお話でREST APIを気軽に確認する内容を書きましたが、今回は実際にスマホアプリ内でREST APIのやりとりを行う方法をまとめます。 以前はOkHttpというライブラリを使うことが多く、現在もそれが主流になりますが、今回はkotlinで使えるRetrofitと呼ばれるライブラリを使っていきましょう 目次1 インストール2 使い方2.1 GETの場合2.2 POSTの場合2.3 PUT通信の場合3 まとめ インストール 通信するので当然アプリ側にインターネット接続の設 […]

スマホアプリ

無音カメラが国内ではリリースできなかったお話

みなさん、無音カメラ(Silent Camera)で撮影してますか? いきなりグレーゾーンの発言ぽくなりましたが、App StoreもGoogle Playにも無音カメラは割とたくさんリリースされています。 そこで弊社でもその波(!?)に乗り、無音カメラのリリースを検討しました。 目次1 実際どうなった?2 リジェクト理由1 スパイウェアの扱いになった3 ちなみにGoogle Playでは?4 終わりに5 参考 実際どうなった? 結果から言うと、リリースはできませんでした。 […]

株式会社8bit (エイトビット)

東京都目黒区でWebサイト制作、Webシステム開発などを行っております。
コーポレートサイトやWebサービスの企画・提案を得意としており、自社での経験を元にアイデアをカタチにするお手伝いをさせていただいております。

Web制作に関するご相談はお気軽にどうぞ

弊社に制作をご依頼いただく際の費用感をご確認いただける、
見積りシミュレーションをご用意いたしました。