アクセシビリティは後付けではありません—要件です。WCAG 2.1 AAコンプライアンスをベースラインとして目指しています。能力に関係なく、すべての人がZenovayを使用できるべきです。
カラーコントラスト
すべてのテキストは最小コントラスト比を満たします:ボディテキストは4.5:1、大きなテキストは3:1。意味を伝えるためにカラーだけに頼りません—アイコンとテキストがバックアップを提供します。
カラーパレットはアクセシビリティを念頭に置いて設計されました。すべてのセマンティックカラー(成功、警告、エラー)は、適切なアイコンと組み合わせると色覚異常のユーザーにも機能します。
キーボードナビゲーション
すべてのインタラクティブ要素はキーボードで到達可能です。フォーカス状態は目に見えて一貫しています。タブ順序は視覚的な順序に従います。キーボードトラップはありません。
- TabとShift+Tabで要素間をナビゲート
- Enterでボタンとリンクをアクティベート
- Escapeでモーダルとドロップダウンを閉じる
- 矢印キーでコンポーネント内をナビゲート
スクリーンリーダー
まずセマンティックHTMLを使用し、必要な場合のみARIAを使用します。画像にはalt属性があります。動的コンテンツは変更を通知します。複雑なウィジェットには適切なロールと状態があります。
- 見出しはドキュメント構造を作成(h1、h2、h3)
- リストは関連アイテムをグループ化
- ボタン対リンク:アクションはボタン、ナビゲーションはリンク
- フォームフィールドには関連するラベルがある
- ライブリージョンが動的な更新を通知
モーション
prefers-reduced-motionメディアクエリを尊重します。必須情報をモーションのみで伝えることはありません。アニメーションは微妙で目的を持っています。
モーション軽減を好むユーザーには、トランジションの代わりに即時の状態変化が表示されます。アニメーションなしでも体験は同様に機能的です。
テスト
アクセシビリティを定期的にテストします。
- CIでのaxe-coreによる自動テスト
- 手動キーボードナビゲーションテスト
- VoiceOverとNVDAスクリーンリーダーテスト
- 200%までのズームテスト
- FigmaでのカラーコントラストチェCC