Вебсправочник
Практика вёрстки

Практика: общая инструкция для группы полей

Несколько связанных полей иногда требуют одной общей инструкции. Упражнение сочетает fieldset и legend с короткой подсказкой, доступной рядом с группой и связанной с полями.

Назначение

Несколько связанных полей иногда требуют одной общей инструкции. Упражнение сочетает fieldset и legend с короткой подсказкой, доступной рядом с группой и связанной с полями.

Как это работает

Legend называет группу, label — каждое отдельное поле. Общий текст имеет уникальный id; aria-describedby указывает на него у обоих полей. Такой вариант удобен для короткой подсказки, но длинный повтор при каждом фокусе нужно оценивать отдельно.

Пример

<fieldset><legend>Размер учебной иллюстрации</legend><p id="dimensions-help">Укажите целые значения в пикселях. Оба значения должны быть больше нуля.</p><label for="picture-width">Ширина</label><input id="picture-width" type="number" min="1" step="1" required aria-describedby="dimensions-help"><label for="picture-height">Высота</label><input id="picture-height" type="number" min="1" step="1" required aria-describedby="dimensions-help"></fieldset>
<style>fieldset{display:grid;gap:.6rem;max-width:30rem}input{font:inherit;padding:.5rem;min-width:0}</style>

Что должно получиться

Группа имеет общее название, а каждое поле — собственную подпись и связь с инструкцией. Макет предназначен для проверки доступности, поэтому отправка данных и серверные имена полей здесь не реализованы.

Граница применения и частая ошибка

Один legend не заменяет подписи отдельных полей. Не связывайте каждое поле с большим абзацем нерелевантной помощи. Общая инструкция не должна быть единственным местом сообщения конкретной ошибки после проверки формы.

Самостоятельная проверка

Перейдите между полями клавиатурой и проверьте их доступные имена и описания. Для реальной формы добавьте осмысленные name и обработчик. Сравните удобство общей подсказки с двумя короткими индивидуальными пояснениями.

HTML и CSS можно изменить в песочнице ниже. Она изолирована: JavaScript, внешние ресурсы и отправка форм отключены. Проверки печати, загрузки файлов и сетевых ответов выполняйте в отдельном учебном проекте.

Попробуйте сами

HTML + CSS песочница
РЕЗУЛЬТАТ · ИЗОЛИРОВАННЫЙ ПРЕДПРОСМОТР
Измените код и нажмите «Запустить». JavaScript и внешние запросы отключены.
Самостоятельный учебный материал. Техническая документация: первоисточник по теме ↗. Если результат отличается, проверьте код и версию браузера.