メール送信後の状態(送信中・受付済み・期限切れなど)を、色に頼らず画面読み上げソフトにも伝わるようReactで実装する方法を解説する記事。状態を1つの値で管理し、通知の強さを使い分けることを示す。
シェアックリップ
シェアされたアックリップです。
そのほかの #フォーム ピックアップ
サロンなどサービス業の予約サイトを、情報設計・モバイル対応・予約フォーム・アクセシビリティなどの観点から解説する記事。アクセシビリティでは、セマンティックなHTMLとキーボードで操作できる部品を取り上げている。
生成AIが作るフォーム部品のアクセシビリティを、モデル・指示文・評価の測り方の違いで比べた研究(PACE)を、著者が紹介する。自動チェックでは分からない、ラベルの意味やキーボード操作、エラーからの回復を確かめる必要を論じる。
Four form components hold every form in our app, and writing this post found the one bug in them
アプリ「Nakodo」のフォーム部品の設計を解説する記事。失敗の通知と成功の通知で role を使い分ける理由と、入力欄の補足(ヒント)が入力欄に関連付けられておらず、スクリーンリーダーで読まれない不具合を扱う。
会員登録フォームで自動入力が効くかを1分で確かめる方法を解説する記事。入力欄に autocomplete の値を付けて入力目的を伝える意味を、WCAG 達成基準1.3.5(入力目的の特定)の解説をもとに示す。
スクリーンリーダーを使う視覚障害のある筆者が、ウェブサイトのログイン画面で遭遇する障壁を解説した記事である。ラベルのないサインインアイコン、パスワード表示の切り替え、チェックボックス、分割された二段階認証の入力欄などを取り上げる。
そのほかの #スクリーンリーダー ピックアップ
【名古屋開催】第13回 ウェブアクセシビリティ勉強会
アクセシビリティの実装・検証について、スクリーンリーダーやキーボード操作などの支援技術を実際に体験し、WCAG達成基準を確認するワークショップ形式の参加型勉強会。
Playwright と Guidepup で、スクリーンリーダーを実際に操作しながらウェブページを検証するテストの作り方を解説する記事である。BBC のホームページを例に、設定の手順と、読み上げ内容を検証する考え方を示す。
リンクの文言が「click here」「read more」のように行き先を伝えないと、スクリーンリーダーのリンク一覧で役に立たないと解説している。文言だけで行き先が分かるように書く方法と、曖昧な文言を見つけるPythonスクリプトを紹介している。
視神経萎縮などで見えにくさのある人がスクリーンリーダー・拡大表示・キーボード操作を使う前提で、開発者が最初に押さえたい基本をまとめた記事である。意味のあるHTML、ラベル、フォーカス管理、変化の知らせ方、テストの方法を扱う。
クリックできる要素が <button> で作られているか、<div> などで代わりに作られていないかを確かめる方法を解説する記事である。<div> は、自分で補わない限り、Tab キーで移動できず、スクリーンリーダーにもボタンとして伝わらない。
画像の文字を読み取ってコピーできるChrome拡張「Scribe」の公開までを、目の見えない作者が書いた記事である。結果欄で矢印キーが効かない問題はNVDAのブラウズモードによるものと切り分け、Tabキーで編集欄へ移る案内で対処した。Geminiに画像を送る前の同意画面も紹介している。
そのほかの #React ピックアップ
React の単体テストに axe-core を組み込んで a11y を自動検査する方法を解説する記事。アイコンフォントの文字が名前とみなされて、名前の無いボタンが標準ルールで検出されないため、独自ルールで補っている。
AIにReactのUIを生成させるとき、ロール・キーボード操作・コントラストの3項目を必ず答えさせるプロンプトの書き方を紹介する記事。ネイティブ要素を優先させることや、コントラスト比を数値で示させることなどを挙げる。
テスト用の一時受信箱のような一覧にReactで検索と未読フィルタを付けるとき、アクセシブルに作る方法を解説する。読み込み中・該当なし・エラーの状態を分けて設計することや、件数の伝え方、フォーカスの保ち方を扱う。
自分のアプリの紹介サイトに置いた四つのアニメーション付きデモのコードを振り返り、同じ遅延処理が繰り返されている点や、動きを減らす設定(reduced motion)の確認を行っていない点を解説している。
Reactのフォーム部品の設計を、ラベルやメッセージ行などの共通の構造、react-hook-form と zod への接続、スマートフォンでの操作の3点から解説する。例には作者が開発するUIライブラリを使っている。
Fluent UIのReact v9とWeb Componentsが、Shadow DOMやPortal、ダイアログでフォーカスやキーボード操作をどう扱っているかを、公式ドキュメントとソースで確かめながら論じる記事である。UIライブラリの設計判断が主題である。