Какие допустимые значения для атрибута id в HTML? - PullRequest
1864 голосов
/ 16 сентября 2008

При создании атрибутов id для элементов HTML, какие правила существуют для значения?

Ответы [ 21 ]

17 голосов
/ 14 ноября 2013

Для ссылки на идентификатор с точкой в ​​нем необходимо использовать обратную косую черту. Не уверен, если это то же самое для дефисов или подчеркивания. Например: HTML

<div id="maintenance.instrumentNumber">############0218</div>

CSS

#maintenance\.instrumentNumber{word-wrap:break-word;}
14 голосов
/ 16 сентября 2008

Из спецификации HTML 4 ...

Жетоны ID и ИМЯ должны начинаться с буквы ([A-Za-z]) и могут сопровождаться любым количеством букв, цифр ([0-9]), дефисов ("-"), подчеркиваний (" _ "), двоеточия (": ") и точки (". ").

РЕДАКТИРОВАТЬ: D'Oh! Опять на кнопку, снова!

14 голосов
/ 16 сентября 2008

Кроме того, никогда не забывайте, что идентификатор является уникальным. После использования значение идентификатора может больше не появляться нигде в документе.

У вас может быть много идентификаторов, но у всех должно быть уникальное значение.

С другой стороны, есть класс-элемент. Как и ID, он может появляться много раз, но значение может использоваться снова и снова.

11 голосов
/ 15 июля 2016

Уникальный идентификатор элемента.

В документе не должно быть нескольких элементов с одинаковым значением идентификатора.

Любая строка со следующими ограничениями:

  1. должен быть длиной не менее одного символа
  2. не должно содержать пробелов:

    • U + 0020 SPACE
    • U + 0009 ТАБЛИЦА СИМВОЛОВ (вкладка)
    • U + 000A LINE FEED (LF)
    • U + 000C ФОРМА ПИТАНИЯ (FF)
    • U + 000D ВОЗВРАТ ЗАРЯДА (CR)

Использование символов, кроме ASCII letters and digits, '_', '-' and '.', может вызвать проблемы совместимости, так как они не были разрешены в HTML 4. Хотя это ограничение было снято в HTML 5, идентификатор должен начинаться с буквы для совместимости.

9 голосов
/ 22 апреля 2009

Похоже, что хотя двоеточия (:) и точки (.) Действительны в спецификации HTML, они недопустимы в качестве селекторов идентификаторов в CSS , поэтому лучше их избегать, если вы собираетесь использовать их для этой цели .

8 голосов
/ 21 августа 2013

для HTML5

Значение должно быть уникальным среди всех идентификаторов в доме элемента поддерево и должно содержать хотя бы один символ. Значение не должно содержать любые пробелы.

хотя бы один символ, без пробелов.

Это открывает двери для допустимых случаев использования, таких как использование акцентированных символов. Это также дает нам больше боеприпасов, с помощью которых вы сможете лучше разобраться, так как теперь вы можете использовать значения идентификаторов, которые вызовут проблемы как с CSS, так и с JavaScript, если вы не будете очень осторожны.

7 голосов
/ 12 ноября 2016

Любое Буквенно-цифровое значение и " - " и " _ " действительны. Но вы должны начать имя идентификатора с любого символа в диапазоне от A-Z или a-z .

7 голосов
/ 02 мая 2013
  1. идентификаторы лучше всего подходят для именования частей вашего макета, поэтому не следует давать одно и то же имя для идентификатора и класса
  2. ID позволяет вводить буквенно-цифровые и специальные символы
  3. , но избегайте использования # : . * ! символов
  4. недопустимые пробелы
  5. не начинается с цифр или дефиса, за которыми следует цифра
  6. с учетом регистра
  7. использование идентификаторов селекторов быстрее, чем использование селекторов классов
  8. использовать дефис "-" (подчеркивание "_" также можно использовать, но не подходит для seo) для длинных имен классов CSS или правил Id
  9. Если правило имеет селектор идентификатора в качестве своего ключевого селектора, не добавляйте имя тега в правило. Поскольку идентификаторы уникальны, добавление имени тега замедлит процесс сопоставления без необходимости.
  10. В HTML5 атрибут id можно использовать для любого элемента HTML, а в HTML 4.01 атрибут id нельзя использовать с: <base>, <head>, <html>, <meta>, <param>, <script>, <style>, and <title>.
5 голосов
/ 09 мая 2017

Без пробелов, должно начинаться как минимум с символа от a до z и от 0 до 9.

0 голосов
/ 22 сентября 2012

алфавит-> колпачки и маленькие
цифры-> 0-9
специальные символы-> ':', '-', '_', '.'

формат должен начинаться с '.' или алфавит, за которым следуют либо специальные символы из большего числа алфавитов или цифр. значение поля id не должно заканчиваться на «_».
Также пробелы не допускаются, если они предусмотрены, они обрабатываются как разные значения, что недопустимо в случае атрибутов id.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...