Skip to content

無障礙設計

AT 替代文字與圖片

AT1 非文字內容的替代品

替代文字必須簡要描述圖片、物件或元件的編輯意圖或目的。

  • icon 有設置 label 可被朗讀。

AT2 裝飾性內容

裝飾性圖片必須從輔助技術中隱藏。

  • 裝飾性 icon、圖片有被隱藏,不會被輔助工具抓取。

AT3 驗證碼或身份認證

驗證碼或身份認證應該依據行動裝置特性提供另一種驗證方式。

  • Town Pass 未使用到驗證碼或身份認證功能。

AT4 視覺格式

不得單獨使用視覺格式來傳達含義。

  • Town Pass 設計上未使用僅依視覺格式傳達之元件。

AT6 文字圖片 (選項)

除標誌圖徽(logo)、圖示(icon)或使用畫布(canvas)的互動式內容,應避免文字圖片。

  • Town Pass 有避免使用文字圖片。

AT7 背景圖片 (選項)

傳達訊息或特別含義的背景圖片應該有其他無障礙的替代方式。

  • Town Pass 有避免使用特別意義之背景圖片。

AV 時序媒體

AV1 視聽內容的替代品

時序媒體的替代內容(如字幕、手語、音訊描述)必須在可用的情況下,伴隨嵌入式媒體提供。

  • Town Pass 未有視聽內容。

AV2 不得自動播放音訊

除非使用者知道會產生音訊或事先知道該音訊可提供暫停/停止/靜音的按鈕,否則音訊不得自動播放。

  • Town Pass 未有自動播放之音訊、影片內容。

AV3 提供詮釋資料 (選項)

應該為所有媒體提供相關的詮釋資料。

  • Town Pass 未有視聽內容。

AV4 音量控制 (選項)

應該為背景音樂、環境聲音、敘述性和編輯上重要的音效提供單獨的音量控制。

  • Town Pass 未有視聽內容。

AV5 不得音訊衝突 (選項)

遊戲或互動式媒體中的敘事音訊不應蓋過或與原生輔助技術衝突。

  • Town Pass 未有視聽內容。

NT 通知

NT1 包容性通知

通知訊息必須同時可見和可聽。

  • Town Pass 使用系統之通知模組,通知跳出時即會被朗讀。

NT2 錯誤訊息和更正

必須提供明確的錯誤訊息。

  • Town Pass 使用 Dialog 跳窗顯示錯誤訊息,使輔助工具朗讀。

TS 觸控操作

TS1 單點觸控

確認多點觸控或路徑觸控需有替代的單點觸控。

  • Town Pass 為全面單點觸控之 UI。

TS2 觸發操作

觸發操作以向上事件為主,需有防止誤觸設計。
物件、元件和控件在啟動開始時(當觸摸時)不會直接觸發動作/事件;當使用者完成啟動(觸摸已移開)時,物件、元件和控件將觸發操作/事件。

  • Flutter UI 元件所提供的 onTap(), onPressed() 等等皆符合此規範。

TS3 觸控目標尺寸

觸控目標尺寸至少 48dp x 48dp (9mm x 9mm)。

  • Town Pass 使用 Google Accessibility 進行檢驗,符合 TS3 之規範。

TS4 並行輸入機制 (選項)

容許並行輸入機制的方式,如外接鍵盤或手寫筆等。

  • Town Pass 容許多方輸入,未對觸控以外的輸入方式做阻擋。

FC 焦點

FC1 可聚焦元件

所有互動元件必須是可聚焦的,非互動元件必須不能聚焦。

  • 互動物件皆可被聚焦;非互動元件有被隱藏,無法被輔助工具聚焦。

FC2 鍵盤陷阱

不得有鍵盤陷阱。
物件、元件或控件可以使用標準導航方法進行瀏覽或離開。
以可見的方式並透過螢幕報讀軟體離開項目導航的方法,該方法可將焦點穿過或跨過鍵盤陷阱。

  • Town Pass 有避免使用鍵盤陷阱之 UI 元件。

FC3 焦點順序

必須以有意義的順序瀏覽可操作的內容。
焦點順序與頁面直觀視覺閱讀順序相同。
當新增的項目出現或啟用,這些項目將出現在觸發他們的項目之後。

  • Town Pass 聚焦符合「上至下,左至右」之順序。

FM 表單

FM1 標記表單控件

必須標記所有表單控件。
所有表單輸入欄位具有視覺的標籤。
螢幕報讀軟體正確報讀所有表單輸入欄位標籤。

  • Town Pass 欄位能明確標籤提示,且可被輔助工具朗讀。

FM2 表單輸入

必須指明並支援預設輸入格式,詳見連結。

  • Town Pass 有針對輸入欄位跳出指定鍵盤。

FM3 分組表單元件

控件、標籤和其他表單元件必須正確配對。 邏輯分組一部分的螢幕上欄位具有可見分組名稱,指出為螢幕上欄位的標籤一部分。
對於分組的每個欄位,螢幕報讀軟體報讀分組標籤優先於欄位標籤。

  • Town Pass 未使用分組表單 UI。

FM4 管理焦點

在使用者輸入過程中,焦點或上下文不得自動更改。

  • Town Pass 輸入表單皆不會於輸入過程中自動變更焦點。

FM5 表單佈局 (選項)

標籤必須放置在靠近相關表單控件的位置,並適當佈置:

  • 在直向畫面中置於欄位的上方
  • 在橫向畫面中置於欄位的左側
  • Town Pass 所使用之表單元件,其標籤皆位於表單左側或上側,並與其他表單有一定距離之間隔。

LK 連結

LK1 描述式鏈結

鏈結和導航文字必須唯一地描述鏈結或項目的目標或功能。

  • Town Pass 同一頁面上之可互動 UI 元件皆有其單一的輔助描述,不會與其他可互動 UI 混淆。

LK2合併重複的鏈結

必須將到同一組件的重複鏈結合併成單個鏈結。
具有圖片和文字標籤的物件、元件和控件,僅宣告一次。
具有圖片和文字標籤的物件、元件和控件的分組方式,僅使它們宣告為一個組件。

  • Town Pass 所有同一組件之連結皆有做合併處理。

DC 動態內容

DC1 禁止閃爍

動態內容不得明顯或有意地在任何一秒鐘中閃爍三遍。

  • Town Pass 設計上有避免使用任何閃爍內容。

DC2 動態內容控制

當螢幕包含動態更新、移動、閃爍的滾動內容或動畫時,可以使用一種方法來停止、隱藏、暫停或控制內容。 該方法可讓輔助技術使用。

  • 首頁跑馬燈輪播無法符合此規範。

DC3 懸浮內容

指標懸停時觸發的附加內容可由使用者移除或移動,指標可以在附加內容上移動,而且原內容不會消失。

  • Town Pass 未使用懸浮內容。

DC4 頁面更新

螢幕內容不會自動重整或改變,或者焦點在物件、元件或控件之間移動時,不會自動重整或改變。

  • 首頁跑馬燈輪播無法符合此規範。

DC5 超時

時間限制的回應必須可調整。
當表單或活動有時間限制時,使用者可關閉時間限制功能。
使用者可以請求更多時間來完成表單/活動。
使用者可以在超時前修改延長足夠的時間。

  • Town Pass 未使用有時間限制之表單、跳窗。

ST 結構

ST1 單一頁面標題

所有頁面或螢幕標題必須唯一且清晰可辨。

  • Town Pass 頁面使用 Flutter 的 Scaffold 元件設置唯一 AppBar,標題置頂置中;可見下範例:

ST2 分組元件

可控元件,以分組進行呈現時,聚焦宣告須表示為同一整體結構,非單一控件。

  • Town Pass 未使用分組控件。

AD 可調適設計

AD1 內容順序

  • Town Pass 聚焦符合「上至下,左至右」之順序。

內容順序必須符合邏輯順序。

AD2 螢幕方向

內容可以響應設備變更螢幕方向。

  • 考慮參與開源意願(參與者需設計與實作直橫雙向版面),Town Pass 目前僅有直向版面。

DT 可辨識設計

DT1 可操作元件

鏈結和其他可操作元素必須清楚區分。

  • Town Pass 設計已參考無障礙視覺對應、考量。

DT2 文字對比

一般文字與文字圖片對比規範,詳見連結。

  • Town Pass 會維持其主視覺色。

DT3 調整文字尺寸

確認文字可以放大到200%而不會失去內容或功能性。

  • Town Pass 大多文字可於 200% 大小下表示內容。

PD 可預期性設計

PD1 指示語言

指定頁面或應用程式的語言,並且必須指示語言的更改。

  • 基本元件如返回(上一頁)、關閉(X圖示),活動訊息等有支援多語系。

PD2 一致的導覽

除非使用者做出變更,否則在一組元件中,反覆出現的導覽機制每次都要有相同的相對順序。

  • Town Pass 同一組元件中,反覆出現的導覽機制位置順序皆相同。

PD3 一致的識別

具有相同功能性的元件,就要有一致的識別。

  • Town Pass 功能相同之元件皆有一致圖示、朗讀內容。