97
Vue 3 學習之旅
最佳實踐

Day 97: 無障礙 (Accessibility, a11y) 考量

·6 分鐘閱讀·最佳實踐

摘要

無障礙(Accessibility,常縮寫為 a11y)是指確保我們的網站和應用程式,能被所有使用者(包括身心障礙人士)順利地使用和存取。

定義與說明

在 Vue 開發中,實踐 a11y 包括:語義化 HTML: 正確使用 <nav>, <main>, <button> 等標籤。ARIA 屬性: 為動態元件添加 role 和 aria-* 屬性,向螢幕閱讀器等輔助技術傳達狀態。鍵盤可導航: 確保所有互動元素都能透過鍵盤(如 Tab 鍵)來存取和操作。足夠的色彩對比度。

實作範例

一個無障礙的自訂按鈕。

無障礙按鈕元件
<template>
  <div
    role="button"
    :aria-pressed="isPressed"
    tabindex="0"
    @click="toggle"
    @keydown.enter.space.prevent="toggle"
  >
    {{ label }}
  </div>
</template>

結論

無障礙不是一個可選項,而是專業網頁開發的基礎責任。從一開始就在開發中考慮 a11y,能讓我們的產品服務更廣泛的受眾,並帶來更好的使用者體驗。

無障礙 a11y ARIA