Поддержка чтения с экрана для <legend>
всегда была неравномерной, и очень сложно, если вообще возможно, нацелиться на одну часть вспомогательной технологии (например, экранного диктора), не влияя при этом на другие приложения (например, NVDA и JAWS).
Однако вы можете попытаться более явно передать контекст элемента legend
, вставив визуально скрытый текст внутри элементов label
. Это дополнит дополнительную информацию для незрячих пользователей, которая не видна. Методы включают позиционирование контента за пределами экрана или использование CSS clip-path.
<fieldset>
<legend>Billing Address:</legend>
<div>
<label for="billing_name">
<span class="visuallyhidden">Billing </span>Name:
</label><br>
<input type="text" name="billing_name" id="billing_name">
</div>
<div>
<label for="billing_street">Street:</label><br>
<input type="text" name="billing_street" id="billing_street">
</div>
[…]
</fieldset>
Также обратите внимание, что разные программы чтения с экрана иногда ведут себя несовместимо. Не невозможно заставить их вести себя одинаково, поэтому мы должны разделить разницу и попытаться сделать разумное приспособление для всех, даже если оно не идеально в каждом случае.
В зависимости от конфигурации, некоторые программы чтения с экрана считывают легенду либо с каждым элементом формы, либо один раз, либо, редко, не считывают вообще. Чтобы учесть это, учтите следующее:
- Сделайте легенду как можно короче для ситуаций, в которых она каждый раз читается вместе с этикеткой.
- Сделайте отдельные этикетки достаточно понятными для ситуаций, в которых легенды не читаются вслух, без повторения легенды на каждой этикетке.
https://www.w3.org/WAI/tutorials/forms/grouping/< /а>
person
Josh
schedule
04.06.2020