Каковы юридические символы для идентификатора элемента HTML?
Какие символы можно использовать в идентификаторе для элемента HTML?
Например:
<SPAN id="section[5]" ...>
(Вернее, я должен придерживаться определенных символов, чтобы убедиться, что id
работает во всех основных браузерах/JavaScript-движке).
Ответы
Ответ 1
В HTML5 единственными ограничениями являются то, что идентификатор должен быть уникальным в документе, содержать хотя бы один символ и не содержать пробелов. См. http://www.w3.org/TR/2014/REC-html5-20141028/dom.html#the-id-attribute
Как указывали другие ответы, HTML 4 более ограничительный и указывает, что
Идентификаторы ID и NAME должны начинаться с буквы ([A-Za-z]), за которой может следовать любое количество букв, цифр ([0-9]), дефис ( "-" ), подчеркивание ( "_" ), двоеточие ( ":" ) и периоды ( "." ).
Ответ 2
В HTML 4 атрибут id
содержит токен NAME, который :
Идентификаторы идентификатора и NAME должны начинаться с письмо ([A-Za-z]) и может быть выполнено любым количеством букв, цифр ([0-9]), дефис ( "-" ), подчеркивание ( "_" ), двоеточия ( ":" ) и периоды ( "." ).
Как указано в предыдущем сообщении, в зависимости от вашей реализации у вас могут возникнуть проблемы с двоеточиями и периодами вместе с другими: Каковы допустимые значения для атрибута id в HTML?
Ответ 3
Из http://www.w3.org/TR/html4/types.html:
Идентификаторы идентификатора и NAME должны начинаться с письмо ([A-Za-z]) и может быть выполнено любым количеством букв, цифр ([0-9]), дефис ( "-" ), подчеркивание ( "_" ), двоеточия ( ":" ) и периоды ( "").
Ответ 4
Все приведенные выше ответы + ID должны быть уникальными
Ответ 5
Из спецификация HTML4:
Идентификаторы ID и NAME должны начинаться с буквы ([A-Za-z]), за которой может следовать любое количество букв, цифр ([0-9]), дефис ( "-" ), подчеркивание ( "_" ), двоеточие ( ":" ) и периоды ( "." ).
Ответ 6
на самом деле я могу успешно использовать °, например,
< span id = "test °" /" >
Кажется, разрешено, и у меня нет проблем с jQuery или другими способами для извлечения элементов dom с помощью селекторов.
Возможно, другие символы работают, но я не тестировал их всех.