Что такое "Для"в теге метки?


просто наткнулся на for параметр в теге HTML label:

<label for="required-firstname"> First Name </label>
<small>*</small>
<input name="required-firstname" type="text" tabindex="2" 
       id="required-firstname" size="24" maxlength="40">

Я конвертирую эту форму в обработанный PHP скрипт, могу ли я избавиться от параметров for=? (И из любопытства, что он делает?)

6 52

6 ответов:

от w3schools.org:

тег определяет метку для элемента input.

элемент label не отображается как что-то особенное для пользователя. Тем не менее, он обеспечивает улучшение удобства использования для пользователей мыши, потому что если пользователь нажимает на текст в элементе label, он переключает элемент управления.

атрибут for тега должен быть равен атрибуту id связанного элемента для их привязки вместе.

НТН!

добавить мои $.02 как доступность SME-а также удобство использования, метка также связывает поле ввода с правильной меткой, чтобы люди, использующие программы чтения с экрана, знали, для чего это поле.

тег HTML label определяет метку для элемента формы. Они обычно используются с флажками и переключателями, и когда пользователь нажимает на метку, он переключает кнопку. С помощью ввода текста (и вам придется проверить это, чтобы быть уверенным) я думаю, что он только дает фокус на ввод, когда пользователь нажимает на метку.

Он указывает, к какому элементу привязана эта метка. В вашем примере кода метка есть на the обязательно-firstname поле ввода. Если пользователь нажмет на эту метку, фокус перейдет в связанное поле ввода. Это улучшение юзабилити, и я думаю, что вам лучше оставить его как есть. Это хорошая практика.

Он связывает метку с идентификатором элемента формы. Некоторые элементы формы, такие как флажки, можно активировать, нажав на их метку.

атрибут "for" является необходимым элементом для доступности вашей формы. Не опускайте его. Для кого-то, использующего средство чтения с экрана (SR), чтобы объявить им веб-страницу, атрибут "for" связывает элемент управления с меткой. Обычно пользователь SR будет переходить через форму, от одного элемента управления (который является фокусируемым элементом для SR) к следующему. Без атрибута "for" пользователь SR должен будет изменить режимы на SR и зондировать вокруг формы, чтобы попытаться определить, какой элемент управления соответствует какой ярлык, который может быть трудоемким и запутанным. Атрибут " for " также может быть полезен для вспомогательных технологий, связанных с двигательными проблемами.

WebAIM.org имеет большую страницу, объясняющую доступность последствий "для":http://webaim.org/techniques/forms/controls

в некоторых браузерах, когда вы нажимаете на текст в теге for, вы установите флажок, с которым он связан (т. е. for = id), или поместите фокус на это поле. Это адская штука