Upgrade to Pro — share decks privately, control downloads, hide ads and more …

実践アクセシビリティ in Angularアプリケーション

shira
November 04, 2020

実践アクセシビリティ in Angularアプリケーション

shira

November 04, 2020
Tweet

More Decks by shira

Other Decks in Technology

Transcript

  1. 自己紹介 • しらはま かおり(@9v9Shira) • フロントエンド エンジニア at 株式会社トレタ •

    普段はAngularでWebアプリ作ってる • アクセシビリティやっていきたい
  2. Angular Material を活用する • Angular Material • https://material.angular.io/ • Angular

    Materialの実装を参考にする • Angular Materialのa11yパッケージを利用する • https://material.angular.io/cdk/a11y/overview • 例)Focus Trap ダイアログ内でフォーカスを循環させたい場合など利用
  3. Focus Trap の sample • ng add @angular/material (@angular/cdk だけでもOK)

    • A11yModuleをインポート (app.module.tsに追加)
  4. axe • ブラウザー拡張 • Chrome • https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/ lhdoppojpmngadmnindnejefpokejbdd • Firefox

    • https://addons.mozilla.org/ja/firefox/addon/axe-devtools/ • 日本語で使える • 92ルールチェックしてくれる • https://github.com/dequelabs/axe-core/blob/develop/doc/rule- descriptions.md
  5. axe

  6. axe

  7. lighthouse • lighthouse • https://github.com/GoogleChrome/lighthouse/ • lighthouseでは42ルールのチェックができる • https://web.dev/lighthouse-accessibility/ •

    https://web.dev/accessibility-scoring/ • アクセシビリティ監査のエンジンはaxe-core • https://www.deque.com/blog/google-selects- deques-axe-chrome-devtools/
  8. lighthouseの利用方法 • Chrome dev tools • Chrome 拡張機能 • Node

    CLI • Nodeモジュールの使用 • lighthouse ci • https://github.com/GoogleChrome/lighthouse-ci
  9. lighthouseでチェックできない項目 • 詳細 • https://web.dev/lighthouse-accessibility/#additional-items- to-manually-check • 例 • タブ順序は論理的か

    • インタラクティブなコントロールはキーボードフォーカス可能か • ユーザーのフォーカスは、ページ追加された新しいコンテンツに 向けられるか • etc…
  10. axe と lighthouse の比較 • axe • アクセシビリティだけチェックしたい • ブラウザ拡張は日本語で使える

    • CLI、CIツールなど一部有料 • lighthouseよりチェックのルールが多い • lighthouse • アクセシビリティ以外もチェックしたい • CLI、CIツールが無料