HTML допустимые атрибуты входного значения - PullRequest
2 голосов
/ 16 декабря 2011

На атрибут value в html распространяются те же ограничения, что и на атрибут id? В частности, могу ли я иметь числовой атрибут value.

Ответы [ 2 ]

6 голосов
/ 16 декабря 2011

Глядя на список атрибутов для HTML 4 , видно, что ограничений нет, кроме элемента LI, который требует, чтобы он был числом.* Обновление - поскольку флажки (которые вы указали в комментарии) являются INPUT элементами, они не имеют особых ограничений.Они могут быть любыми CDATA .

3 голосов
/ 16 декабря 2011

Как вы можете видеть здесь , атрибут value тега input можно описать как тип text, что в значительной степени означает «без ограничений», тогда как значение id -атрибут ограничен :

Правила именования атрибута id:

  1. Должен начинаться с буквы A-Z или a-z
  2. Может сопровождаться: буквами (A-Za-z), цифрами (0-9), дефисами ("-") и символами подчеркивания ("_")
  3. В HTML все значения чувствительны к регистру

Более того, я думаю, что не имеет смысла ограничивать атрибут value в любом виде, потому что он представляет пользовательский ввод.


// EDIT:

Чтобы не было единственной ссылки на w3schools (позор мне, но я не удаляю ее, чтобы сохранить ее в качестве памятника для моего опрометчивого поступка), вот ссылка на w3.org о вводе -tag и тип данных его значения-атрибута . Но сейчас у меня проблемы, потому что обе ссылки рассказывают разные истории. Согласно w3schools , тип данных value -атрибута Text. Но в соответствии с w3.org (которому я уверен больше доверяю) тип данных - CDATA, что сопровождается несколькими общими ограничениями, например ::

Пользовательские агенты могут игнорировать начальные и конечные пробелы в CDATA значения атрибута (например, «myval» может интерпретироваться как «myval»). Авторы не должны объявлять значения атрибутов с начальным или конечным пробел.

(http://www.w3.org/TR/html4/types.html#type-cdata)

И есть также определенное ограничение для id -атрибута:

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

...