`](/html/span/). Одно из [правил использования ARIA](/a11y/aria-intro/#pravila-ispolzovaniya) — не перезаписывать роли без необходимости.
+В первую очередь используйте HTML-элемент `
+```
+
+
+
+Явная роль понадобится в редких случаях: при вёрстке сложных кастомных компонентов или для поддержки _очень_ старыми браузерами.
+
+Когда задаёте `role="form"` явно, лучше добавлять роль к семантически нейтральным [``](/html/div/) и [``](/html/span/). Одно из [правил использования ARIA](/a11y/aria-intro/#pravila-ispolzovaniya) — не перезаписывать роли без необходимости.
+
+Не забудьте _по-настоящему_ отправить данные из формы. Роль, в отличие от HTML-элемента, не умеет слушать браузерные события. Для этого, например, можете использовать метод [`fetch()`](/js/fetch/):
+
+```js
+const form = document.getElementById('custom-form')
+const input = document.getElementById('email')
+const button = document.getElementById('subscribe-btn')
+
+function submitForm(event) {
+ event.preventDefault()
+ const email = input.value.trim()
+
+ if (email) {
+ fetch('/subscribe', {
+ method: 'POST',
+ headers: { 'Content-Type': 'application/json' },
+ body: JSON.stringify({ email })
+ })
+ }
+}
+
+button.addEventListener('click', submitForm)
+```
-В большинстве случаев лучше использовать `
+```
+
+С помощью `aria-labelledby` с формой связывают видимое имя, например, из заголовка.
+
+```html
+
+
+ Подписка на рассылку
+
+
+
+```
+
+Хотя на странице может быть несколько форм, они не обязательно должны быть ориентирами. Старайтесь называть только формы для ввода важных данных, к которым пользователям скринридеров было бы полезно и необходимо быстро перемещаться.
+
+Для элемента с ролью `form` можно использовать и другие [глобальные ARIA-атрибуты](/a11y/aria-attrs/#globalnye-atributy).
## Как понять
-Роль `form` создаёт ориентир на странице. Это значит, что пользователи скринридеров могут быстро переместиться к этой части страницы с помощью горячих клавиш или через меню ориентирами.
+Роль `form` создаёт _ориентир_ на странице. Это значит, что пользователи скринридеров могут быстро переместиться к этой части страницы с помощью горячих клавиш или через меню со всеми ориентирами.
+
+## Подсказки
+
+💡 Для области с полем для поиска по сайту используйте [``](/html/search/) или `role="search"`.
+
+💡 Без `aria-label` или `aria-labelledby` форма не станет ориентиром для пользователей скринридеров.