Кратко
СкопированоТег <output>
позволяет выводить результаты вычислений или действий пользователя. Относится к элементам семантической вёрстки.
У тега есть встроенная роль status
. Благодаря ей скринридеры и другие вспомогательные технологии автоматически зачитывают содержимое тега, когда оно обновляется. Это делает часть страницы интерактивной или «живой» областью.
Пример
Скопировано<form> <label for="people-num"> Для скольких людей приготовить яичницу: </label> <input type="number" id="people-num" name="people" oninput="eggs.value = (parseInt(people.value) * 2)" > <p>Необходимое количество яиц:</p> <output role="status" name="eggs" for="people-num"></output></form>
<form> <label for="people-num"> Для скольких людей приготовить яичницу: </label> <input type="number" id="people-num" name="people" oninput="eggs.value = (parseInt(people.value) * 2)" > <p>Необходимое количество яиц:</p> <output role="status" name="eggs" for="people-num"></output> </form>
Как понять
СкопированоЭлемент <output>
используется в тех случаях, когда пользователю надо показать результат работы программы в реальном времени, например:
- информация, которую пользователь вводит или изменяет в форме;
- вывод расчётов по данным, которые указал пользователь (калькулятор, гороскоп и тому подобное);
- всплывающие уведомления — тосты.
Как пишется
Скопированоfor
— значением может быть один или несколько ID, разделённые пробелом. Указывает на связь перечисленных элементов ввода (например,<input>
) с элементом<output>
.form
— указывается ID формы в этом же документе, с которой связывается поле вывода.name
— имя поля вывода. Используется для подписи результата при отправке формы.
Чтобы тег работал во всех браузерах и со всеми скринридерами корректно, рекомендуют явно задавать ему role
.
<output>
— парный тег. Допустимо вставлять пустой тег в разметку и класть выводимое значение внутрь него при помощи JavaScript.
К тегу <output>
также применяются все глобальные атрибуты.
<output>
можно связать с рейтингом, чтобы увидеть числовой результат.
Также тег можно использовать для вывода всплывающих уведомлений.