Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ウェブアクセシビリティ対応への課題と実践的な取り組み方
Search
wadeen
September 09, 2023
Technology
1.3k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ウェブアクセシビリティ対応への課題と実践的な取り組み方
ウェブアクセシビリティ対応への課題と実践的な取り組み方
#ジャムスタックチョットデキル
wadeen
September 09, 2023
Other Decks in Technology
See All in Technology
渡米前の準備を制す!re:Invent 2026徹底準備術 / The Ultimate Preparation Guide for re:Invent 2026
yuj1osm
1
440
E2Eってつらくないですか?E2Eの管理コストを下げる手段とその実践
akaboshinit
6
2.8k
OneLakeをデータソースにした AI Search(Foundry IQ)の ライフサイクル管理
ryuseiiida
0
200
You Have Agency(サンキュー、Ruby)
snoozer05
PRO
4
620
Adversary Infrastructure Hunting101
disconinja
0
180
AI秘書と毎日働くのはもう当たり前。開発以外の業務に足りない機能をどう埋める?
minorun365
PRO
4
2k
AIで選択肢が広がった組織設計の理想と現実
konifar
16
7.3k
あなたのDartコードは丸見えかもしれない ~reFlutterで暴くFlutterアプリの中身と多層防御~
zozotech
PRO
0
710
生き様としてのSRE
hokkai7go
0
140
ビジネス部門からPOを迎えての半年間の進歩と課題
zozotech
PRO
0
170
Flutter Webを「SDK」として配る — 50以上のゲームを支える埋め込みアーキテクチャ
masayukisuda
0
160
re:Inventで、人生は変わったのか? / growth-builders-hub-1-reinvent-2026
mhrtech
2
170
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Making Projects Easy
brettharned
120
6.8k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
870
Odyssey Design
rkendrick25
PRO
2
900
Mind Mapping
helmedeiros
1
420
We Are The Robots
honzajavorek
0
410
Skip the Path - Find Your Career Trail
mkilby
1
270
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
340
GitHub's CSS Performance
jonrohan
1033
470k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Designing for Performance
lara
612
70k
Transcript
ウェブアクセシビリティ対応への 課題と実践的な取り組み方
自己紹介 @wadeen_net わでぃん ‐ chot Inc. 所属(1月〜) ‐ Webフロントエンドエンジニア ‐
フルスタックにやりたい ‐ 鹿児島出身🌋 → 東京都在住🗼
今日話すこと フロントエンドエンジニア向けの内容
今日話すこと ✓対応できなかった場合の問題点が分かる ✓自分の理解度を確認することができる ✓コードの改善例を見てイメージができる ✓ウェブアクセシビリティを取り組む為のステップが分かる
今日話すこと _会社やチームで取り組むぞ!!_
今日話すこと chot社でもこれからやっていこうという段階
フロントエンドエンジニアの責務
フロントエンドエンジニアの責務 「どこまでやるのか?」は別問題 として切り分けて考える必要がある フロントエンドエンジニアの責務である ウェブアクセシビリティは
フロントエンドエンジニアの責務 - 出来ていること/出来ていないことが曖昧 - 無意識にやっていることも多い - そもそも何をやればいいのか分からない/気付かない - その先にどういう問題があるのかが分からない
ウェブアクセシビリティ向上のために 何をしていますか?
ウェブアクセシビリティ向上のために何をしていますか? 日常的にやってそうなこと ✓セマンティクスなHTMLタグの使用 ✓画像に代替テキスト(altタグ)を入れる ✓エラーメッセージの表示 ✓レスポンシブ対応(画像切替えやフォントサイズ調整)
ウェブアクセシビリティ向上のために何をしていますか? あまり出来ていなそうなこと ✓キーボード操作への配慮 ✓WAI-ARIAの使用 ✓動画や音声コンテンツの対応 ✓スクリーンリーダー/タブ操作での確認作業
ウェブアクセシビリティ向上のために何をしていますか? 本当にその対応であっていますか? さらに・・・
ウェブアクセシビリティ向上のために何をしていますか? ほとんどの原因は「知識不足」 知っていれば工数をかけずにできることがたくさんある!!
ウェブアクセシビリティ向上のために何をしていますか? 1⃣ 情報感度を高くしてキャッチアップ 2⃣ 実際に起こる問題を知る
ウェブアクセシビリティ向上のために何をしていますか? 1⃣ 情報感度を高くしてキャッチアップ 2⃣ 実際に起こる問題を知る
ウェブアクセシビリティ向上のために何をしていますか? ✓タブ操作ができずアクセスができない ✓画像の代替テキストが不適切なので内容が分からない ✓複雑なナビゲーションがあり使用が難しい ✓モバイル デバイスでの表示や操作が困難
事例紹介
事例紹介 Case01: 官公庁案件 Case02: コーポレートサイト
事例紹介 1⃣ WAI-ARIAを適切に使う 2⃣ スクリーンリーダー用のテキストを工夫する _Case01: 官公庁案件_
事例紹介 ロール (Role): 要素の役割 プロパティ (Property): 要素の特性 ステート (State): 要素の現在の状態
そもそもWAI-ARIA(ウェイアリア)とは・・・? _HTMLのセマンティクスを最大限活用し不足時のみ使用_ 一言で言うと、Webのアクセシビリティ向上のための技術のこと
事例紹介 今回の要件は、 - WCAG基準のレベルAAに準拠する - 一部、レベルAAAも対応可能な範囲で対応する _Case01: 官公庁案件_ ❶ WAI-ARIAを適切に使う
A:最低限 AA:推奨 AAA:最高レベル
事例紹介 2.1.3 キーボード(例外なし)の達成基準 2.4.8 現在位置の達成基準 3.2.5 要求による状況の変化の達成基準 レベルAAAの達成目標
事例紹介 _Case01: 官公庁案件_ `isMenuOpen`の状態を通知する ❶ WAI-ARIAを適切に使う
事例紹介 _Case01: 官公庁案件_ 現在のページをマシンに伝える ❶ WAI-ARIAを適切に使う
事例紹介 スクリーンリーダー用のテキストは、 WAI-ARIAだけじゃない _Case01: 官公庁案件_ ❷スクリーンリーダー用のテキスト ▶ 実際にスクリーンリーダーで聞いて確認する
事例紹介 _Case01: 官公庁案件_ すぐに本文に移動できるようにリンク追加 ❷スクリーンリーダー用のテキスト
事例紹介 _Case01: 官公庁案件_ アイコンの意味を読み上げる(case by case) ❷スクリーンリーダー用のテキスト
事例紹介 1⃣ 画像の代替テキストを適切に使う 2⃣ タブ操作できない場合に起こる問題を解消する _Case02: コーポレートサイト_
事例紹介 _Case02: コーポレートサイト_ ❶ 代替テキストの使用方法 説明が不十分 適切な代替テキストに変更
事例紹介 _Case02: コーポレートサイト_ ❶ 代替テキストの使用方法 view moreが何か分からない 詳しい遷移先を読み上げる
事例紹介 _Case02: コーポレートサイト_ ❷ タブ操作の問題を解消 ⚠タブ操作で開かない
事例紹介 _Case02: コーポレートサイト_ - 最初と最後の要素 - Tab key - Shift
key ❷ タブ操作の問題を解消
事例紹介 _Case02: コーポレートサイト_ Escapeで閉じる ❷ タブ操作の問題を解消 https://chot-inc.com/
事例紹介 _Case02: コーポレートサイト_ ❷ タブ操作の問題を解消 スクリーンリーダー/タブ操作を実際に行う ▶ チェックツールでは判別できないこともたくさんある
法律関係 障害者差別解消法 が改正 - 令和6年4月1日から施行 - 今までは国や地方自治体は「義務」/ 民間は「努力義務」 - 民間事業者も合理的配慮の提供が義務化
*Webアクセシビリティ対応が義務化されたわけではない
小さく取り組んでみよう!
小さく取り組んでみよう! 実際にチーム・会社でどう取り組んでいくかを考える
小さく取り組んでみよう! - アクセシビリティとは?ユーザビリティとは? - WAI-ARIAの説明と使い方 - スクリーンリーダーの使い方 / 過去案件を確認してもらう -
NotionにTipsや、aria属性のリスト化・テンプレート集を作成 - (e.g. タブパネルやアコーディオン、ハンバーガーメニュー) 社内で勉強会を開いた
小さく取り組んでみよう! - axeやMarkuplintの活用 - VSCodeやChromeの拡張機能 - ヘッドレスUIの導入 - 企業が公開しているチェックシート・ガイドラインの活用 -
社内のチェックシートの作成・社内基準を明確にする 🛠 仕組みを活用する
小さく取り組んでみよう! - チーム開発だと1人詳しくても成り立たない - 「ウェブアクセシビリティ」の解釈が違うことが多い 🤝 人を巻き込もう
小さく取り組んでみよう! - チーム開発だと1人詳しくても成り立たない - 「ウェブアクセシビリティ」の解釈が違うことが多い 🤝 人を巻き込もう 前提や温度感を近づけたい
小さく取り組んでみよう! - チーム開発だと1人詳しくても成り立たない - 「ウェブアクセシビリティ」の解釈が違うことが多い - 自分も分からないで全然OK!声をあげて取り組んでみる! - 基礎の基礎からでいいのでみんなで話す場を作る -
徐々に会社やチームで取り組む(Slackのチャンネルなど) - 継続が難しいので広げていく人を増やす 🤝 人を巻き込もう
- 問題を知る - 知識をつける - 声をあげてやってみる まとめ
ご静聴ありがとうございました!