From what I understand, в HTML5 мы должны начать использовать атрибут id
для ссылки на элементы a
, вместо атрибута name
. Проблема заключается в том, что существует также ограничение, что id
должно быть уникальным для каждого документа.Почему они не признают атрибут 'name' для HTML <a> элементов?
Теперь я вижу много ситуаций, когда вы хотите ссылаться на набор связанных элементов a
(обычно в JS). Однако, избавляясь от атрибута name
, мы вынуждены либо повторно использовать то же самое id
, либо использовать имя class
. Классы должны, предположительно, быть в представлении, поэтому это также несовершенное решение, если вы ссылаетесь на свои a
для причин, не связанных с презентацией.
Я полагаю, что другой альтернативой HTML5 было бы использовать что-то вроде data-name
, но это также кажется хакерским. Есть что-то, что мне не хватает? Есть ли секретный заговор W3 поэтапного отказа от name
?
EDIT: Для тех, кто говорит, что «классы не обязательно должны быть о представлении», у меня возникают проблемы с поиском определенного источника, но я знаю, что прочитал хотя бы пару блогов/статей, где это было подчеркнуты. У меня такое чувство, что эти люди не были программистами JS ...
ТАКЖЕ: Спасибо за все хорошо объясненные, продуманные ответы!
Это всего лишь атрибут, поэтому все остальное, что может стоять за ним и не должно быть уникальным, кажется для меня справедливой игрой. Классы или атрибуты данных кажутся вполне приемлемыми на мой взгляд. – kinakuta
«Занятия должны быть о представлении»? – guest