Должен ли я поместить элементы ввода внутри элемента метки? - PullRequest
533 голосов
/ 21 апреля 2009

Есть ли лучшая практика относительно вложенности элементов HTML label и input?

классическим способом:

<label for="myinput">My Text</label>
<input type="text" id="myinput" />

или

<label for="myinput">My Text
   <input type="text" id="myinput" />
</label>

Ответы [ 12 ]

1 голос
/ 21 ноября 2016

Я предпочитаю оборачивать элементы внутри моего <label>, потому что мне не нужно генерировать идентификаторы.

Я разработчик Javascript, и React или Angular используются для создания компонентов, которые могут быть использованы мной или другими пользователями Тогда будет легко дублировать идентификатор на странице, что приведет к странному поведению.

1 голос
/ 07 января 2014

Ссылаясь на WHATWG ( Написание пользовательского интерфейса формы ), это не является неправильным, чтобы поместить поле ввода внутри метки. Это экономит ваш код, потому что атрибут for из label больше не нужен.

...