Menu Button
選單按鈕
選單按鈕會打開一組操作或選擇,並告訴軟體選單是否已展開。
生活中的例子
在文件編輯器中,「匯出」會打開 PDF、DOCX 和 Markdown 選項。向下鍵可打開選單並聚焦第一項;Escape 可關閉選單並把焦點送回按鈕。選擇 PDF 只會匯出一次,不是開啟長期設定。
主要部分
- 01觸發按鈕
- 02彈出選單
- 03選單項目
什麼時候用
當一小組指令全部顯示成按鈕會讓畫面太擠時,可以使用選單按鈕。必須完整支援選單的鍵盤操作。
什麼時候不要用
一般網站導覽連結,或會送出值的表單欄位,都不要使用 `menu` 角色。
程式裡的名稱
button aria-haspopup=menu aria-expanded + role=menu/menuitem 上線前要檢查
只在遮住整個頁面的對話框中限制焦點,其他情況不要困住焦點。支援 Esc 鍵與清楚可見的關閉按鈕;關閉後,把焦點還給原本的按鈕。保留已輸入資料,並檢查小螢幕、載入與失敗狀態。
預期成果:使用 選單按鈕 (Menu Button) 解決這項需求,同時保留使用者目前的操作脈絡。 使用者情境:在文件編輯器中,「匯出」會打開 PDF、DOCX 和 Markdown 選項。向下鍵可打開選單並聚焦第一項;Escape 可關閉選單並把焦點送回按鈕。選擇 PDF 只會匯出一次,不是開啟長期設定。 建議介面模式:選單按鈕 (Menu Button)。 適用理由:當一小組指令全部顯示成按鈕會讓畫面太擠時,可以使用選單按鈕。必須完整支援選單的鍵盤操作。 不應使用的情況:一般網站導覽連結,或會送出值的表單欄位,都不要使用 `menu` 角色。 產品要求:定義預設、載入、沒有內容、錯誤、成功與復原狀態。保留使用者已輸入的內容,每個操作後都提供清楚回饋。 無障礙與韌性:使用結構正確的 HTML(語意化 HTML)和完整鍵盤操作。焦點要清楚可見,版面縮放後仍要好用。也要提供減少動態效果。遵守專案現有規則。除非專案已採用,否則不要新增介面元件庫。 驗收條件:主要任務可只用鍵盤完成,在 320px 寬度也能正常使用。焦點與狀態變化可被輔助工具讀出。載入、失敗、重試、取消與減少動態效果都已驗證。 證據與限制(證據邊界):它只代表該來源的官方說法。其他平台或團隊可能有不同用法。 待確認:產品文字、資料來源、分析事件、支援裝置與語系,以及平台特有限制。
檢查這份需求
請 AI 程式助手檢查目前如何使用 選單按鈕 (Menu Button)。 定義:選單按鈕會打開一組操作或選擇,並告訴軟體選單是否已展開。 正式環境檢查:只在遮住整個頁面的對話框中限制焦點,其他情況不要困住焦點。支援 Esc 鍵與清楚可見的關閉按鈕;關閉後,把焦點還給原本的按鈕。保留已輸入資料,並檢查小螢幕、載入與失敗狀態。 修改程式前,先列出看到的證據、缺口、嚴重程度,以及最小且安全的修正。