移動裝置無障礙清單
本文件為移動應用開發者提供了一份簡潔的輔助功能要求清單。隨著新模式的出現,本文件將不斷演進。
顏色
-
顏色對比度必須符合 WCAG 2.2 AA 級要求
- 普通文字(小於 18pt 或 14pt 粗體)的對比度為 4.5:1。
- 大號文字(至少 18pt 或 14pt 粗體)的對比度為 3:1。
-
透過顏色傳達的資訊也必須透過其他方式提供(例如,連結使用下劃線文字等)。
可見性
- 不得僅使用零不透明度、z 軸順序和螢幕外定位等內容隱藏技術來處理可見性。
- 當前螢幕上除了可見內容以外的所有內容都必須是真正不可見的(對於具有多個卡片的單頁應用尤其重要)。
- 使用
hidden屬性或visibility或display樣式屬性。 - 除非絕對不可避免,否則不應使用
aria-hidden屬性。
- 使用
焦點
-
所有可啟用的元素都必須可獲得焦點。
- 連結、按鈕和表單欄位等標準控制元件預設即可獲得焦點。
- 非標準控制元件必須為其分配適當的 ARIA 角色,例如
button、link或checkbox。
-
焦點應以邏輯且一致的方式進行處理。
文字等效項
-
對於應用中所有非純粹表現性的非文字元素,都必須提供文字等效項。
- 在適當的地方使用 alt 和 title 屬性(閱讀 Steve Faulkner 關於使用 HTML title 屬性的文章,獲取一份不錯的指南)。
- 如果上述屬性不適用,請使用適當的 ARIA 狀態和屬性,例如
aria-label、aria-labelledby或aria-describedby。
-
必須避免使用文字圖片。
-
所有具有可見文字(或文字圖片)作為標籤的使用者介面元件,必須在元件的程式化 名稱 中提供相同的文字。WCAG 2.1: 名稱中的標籤。
-
所有表單控制元件都必須有標籤(
<label>元素),以方便螢幕閱讀器使用者使用。
處理狀態
- 單選按鈕和複選框等標準控制元件由作業系統處理。但是,對於其他自定義控制元件,必須透過 ARIA 狀態(如
aria-checked、aria-disabled、aria-selected、aria-expanded和aria-pressed)來提供狀態更改。
方向
- 除非必要,否則內容不應僅限於單一方向(如縱向或橫向)。WCAG 2.1: 方向
- 例如,鋼琴應用或銀行支票是方向至關重要的場景。
一般準則
-
必須提供應用標題。
-
標題不得破壞層級結構。
html<h1>Top level heading</h1> <h2>Secondary heading</h2> <h2>Another secondary heading</h2> <h3>Low level heading</h3> -
應使用 ARIA 地標角色來描述應用或文件結構,例如
banner、complementary、contentinfo、main、navigation、search。 -
對於觸控事件,請確保以下幾點(WCAG 2.1: 指標取消)
- 不應使用按下事件來執行功能的任何部分;
- 如果上述條件不滿足,功能的完成應在抬起事件上觸發,並且需要有機制可以在完成前中止操作或在完成後撤銷操作;
- 如果上述條件不滿足,抬起事件應能夠撤銷由按下事件觸發的任何操作;
- 如果必須在按下事件上觸發操作,以上所有規則都可能被違反,通常是為了模擬真實世界的體驗或提供即時反饋。例如,遊戲控制元件、鋼琴鍵盤或虛擬鍵盤。
-
觸控目標必須足夠大,以便使用者能夠與之互動(請參閱 BBC 移動輔助功能指南,瞭解有用的觸控目標尺寸指南)。
注意:本文件的原始版本由 Yura Zenevich 撰寫。