0Pricing
Web Accessibility Academy · Урок

Меню, панель меню и кнопка меню

Реализуйте меню приложения с правильными ролями и клавишами.

«Меню, панель меню и кнопка меню» — бесплатный урок Web Accessibility Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Web Accessibility Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Web Accessibility Academy содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

What ARIA Menus Are

An ARIA menu is an app-style list of commands, like the File or Edit menus in desktop software, not your site's main navigation. 🍔

Not for Site Navigation

Page links belong in a nav with normal anchors. Use the menu role only for true command sets, or you will confuse screen reader users.

Three Core Roles

The pattern uses role="menu" for the container, role="menuitem" for each command, and role="menubar" for a horizontal always-visible bar.

<ul role="menu">
  <li role="menuitem">Cut</li>
  <li role="menuitem">Copy</li>
</ul>

The Menu Button

A menu button is a real button that opens a menu. Give it aria-haspopup="true" so users know a popup is coming.

<button aria-haspopup="true"
  aria-expanded="false">Actions</button>

Track Open State

The menu button toggles aria-expanded between true and false as its menu opens and closes, just like any disclosure control.

Move Focus on Open

When the menu opens, move focus into it, onto the first menu item. The button no longer holds focus while the menu is active.

Arrow Keys Inside

Inside a vertical menu, Up and Down Arrow move between items. In a menubar, Left and Right Arrow move along the top-level bar.

Roving tabindex

Only one menu item is in the tab order at a time. With roving tabindex, the focused item has tabindex 0 and the rest have -1.

Activate and Close

Enter or Space runs the focused command and closes the menu. The menu should dismiss itself after a command is chosen.

Escape Returns Focus

Escape closes the menu without acting and sends focus back to the menu button, so the user lands exactly where they started.

Submenus Need More

A flyout submenu uses aria-haspopup on its parent menuitem, and Right Arrow opens it while Left Arrow closes it and returns.

Quick Check

You add a button that opens a list of commands. What signals to assistive tech that a menu will appear?

Recap

Menus are for commands, not page links: open with a haspopup button, move focus in, navigate with arrows and roving tabindex, and let Escape return focus. ✅

Часто задаваемые вопросы

Урок «Меню, панель меню и кнопка меню» бесплатный?

Да — полный текст урока «Меню, панель меню и кнопка меню» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Web Accessibility Academy, подпишись на CoddyKit PRO. Курс Web Accessibility Academy содержит 4 уроков всего.

Чему я научусь в уроке «Меню, панель меню и кнопка меню»?

Реализуйте меню приложения с правильными ролями и клавишами. Ты практикуешь Web Accessibility Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Web Accessibility Academy?

Предыдущий опыт не требуется. Web Accessibility Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Меню, панель меню и кнопка меню»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Web Accessibility Academy?

Да. Каждый урок Web Accessibility Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Чтение APG: шаблоны, клавиши и примеры
  2. Комбинированное поле и автодополнение без ошибок
  3. Меню, панель меню и кнопка меню
  4. Дерево-таблица и другие продвинутые шаблоны
← Назад к Web Accessibility Academy