ブラウザゲームにおいて、複数の操作方法と状態表現を組み合わせてアクセシビリティを確保する方法を、Astro と React Islands で実装。
シェアックリップ
シェアされたアックリップです。
そのほかの #React ピックアップ
React で FAQ の答えを state でマウント解除する実装と、`<details>` 要素で常に DOM に保持する実装を比較。マウント解除すると find-in-page 検索が失敗し、トランジション不可になるほか、client component 化を強いる。ネイティブ実装なら同じ見た目でこれらの制約がない。
React Modal コンポーネント(oks-ui)の実装ガイド。role="dialog"・aria-modal="true"・accessible name・フォーカス管理・キーボード操作をカバー。複数ブラウザで動作確認済み。
WCAG準拠だけでなく、個々のアクセシビリティニーズに適応するインターフェースへ。agentic AIが複数のタスクを協調させながら個人化されたアクセシビリティ体験を実現する可能性を探る。
テンポラリーメール受信ボックスのReact実装で、loading・empty・error・ready 状態を型で明確に定義する設計。フォーカス管理と aria-live によるアクセシブルなフィードバック、リクエスト ID で古い結果を無視する方法を解説。
ブレッドクラムコンポーネントの実装例を紹介。型定義で最後の項目の href を省き、HTML では aria-current="page" と aria-hidden を使い分け、JSON-LD では position を 1 から始めてリンクのない項目の item を省く設計。
React で一時メール確認フローを実装する際、ステートマシンで状態を明示的に管理し、aria-live で状態変化を通知。ポーリング時に cancelled フラグで不要なレンダリングを避け、アクセシビリティと性能の両立を実現する。
そのほかの #キーボード操作 ピックアップ
モバイル表示で幅広いテーブルがページ横スクロールを引き起こす問題。テーブルをスクロール可能なコンテナで包み、キーボード利用者が操作できる実装方法を説明。
Webレター・パーソナルメッセージの品質保証フロー。コンテンツファースト、キーボード操作可能性、見出し構造の正確性、画像の代替テキスト、prefers-reduced-motion対応、音声の操作性を含むチェックリスト。
ポートフォリオサイトのアクセシビリティ監査。セマンティックHTML要素(header、nav、main)の採用、見出し階層の一貫性、キーボード操作を想定したリンク記述の改善を具体例で解説。
React で FAQ の答えを state でマウント解除する実装と、`<details>` 要素で常に DOM に保持する実装を比較。マウント解除すると find-in-page 検索が失敗し、トランジション不可になるほか、client component 化を強いる。ネイティブ実装なら同じ見た目でこれらの制約がない。
React Modal コンポーネント(oks-ui)の実装ガイド。role="dialog"・aria-modal="true"・accessible name・フォーカス管理・キーボード操作をカバー。複数ブラウザで動作確認済み。
固定フッターがキーボード操作のフォーカスを隠す問題の検証ツール。ResizeObserver で要素の高さを追跡し、WCAG 2.4.11 の達成基準を参考に改善方法を示す。