跳至主要内容
💬 回報這一頁

驗收清單

上線前跑一遍。每一項都能在 10 秒內驗完。

鍵盤

  • 只用鍵盤能完成主要流程(建立 → 編輯 → 送出)
  • Tab 順序符合視覺順序(由上到下、由左到右)
  • 焦點環看得見(不要 outline: none 了事)
  • Esc 能關掉所有浮層、退出所有編輯態
  • 一組選項(分段、標籤片)只佔一個 Tab 停留點
  • 對話框開啟時焦點進入、關閉時焦點還原

螢幕報讀器

  • 所有圖示按鈕有 aria-label
  • 對話框有 DialogTitle
  • 排序表頭有 aria-sort
  • 鎖定欄位可聚焦,且 aria-label 說得出鎖定原因
  • 動態內容(導覽步驟、驗證訊息)有 aria-live
  • 表單控制項有關聯的 <Label htmlFor>
  • 每一個 role="img" 的圖形都有文字等價(摘要 aria-label,必要時加 sr-only 資料表)
  • 圖形內的資料不會被重複播報(數值已在鄰近可見文字時,圖形標 aria-hidden

視覺

  • 一般文字對比 ≥ 4.5:1(淺色與深色各驗一次
  • UI 邊界對比 ≥ 3:1
  • 每個靠顏色傳達的狀態都有第二條線索
  • 灰階列印一份,語意仍完整

跨裝置

  • 手機上互動目標 ≥ 44px
  • 表單在窄螢幕變單欄,不橫向捲動
  • 提示泡泡在觸控裝置能長壓叫出來
  • 表格在窄螢幕可水平捲動,且首欄凍結

動態

  • 開啟「減少動態」後,動畫降級成靜態版本而不是消失
  • 沒有超過 300ms 的互動轉場
  • 沒有自動播放、無法停止的動畫

文案

  • 錯誤訊息說得出原因與下一步,不只是「操作失敗」
  • 空狀態分辨「沒資料」「篩不到」「沒權限」
  • 對話框按鈕文字能單獨讀懂(不是「是/否」)
  • 鎖定提示說得出怎麼解鎖

自動化

能寫成測試的就不要靠人工。範本見 漂移防護