Допустимы ли одинарные кавычки в HTML / XHTML? - PullRequest
27 голосов
/ 06 февраля 2010

Допустимы ли одинарные кавычки в HTML? А точнее: строгий XHTML.

<table width="100%">
<table width='100%'>

Ответы [ 3 ]

22 голосов
/ 06 февраля 2010

Да, одинарные кавычки действительны.

Из спецификации XML:

[10]   AttValue  ::= '"' ([^<&"] | Reference)* '"'
                  |  "'" ([^<&'] | Reference)* "'"
5 голосов
/ 11 апреля 2010

Источник этой путаницы, похоже, исходит из этой статьи

http://www.javascriptkit.com/howto/xhtml_intro.shtml

, который, кажется, утверждает, что одинарные кавычки недопустимы в xhtml. Однако, поскольку ни одна спецификация не цитируется, а статья также утверждает, что строчные имена для атрибутов и элементов запрещены, автор может просто выразить редакционный запрет на использование одинарных кавычек.

4 голосов
/ 06 февраля 2010

Согласно спецификации , оба действительны: -)

[9]    EntityValue    ::=    '"' ([^%&"] | PEReference | Reference)* '"'  
   |  "'" ([^%&'] | PEReference | Reference)* "'" 
[10]    AttValue    ::=    '"' ([^<&"] | Reference)* '"'  
   |  "'" ([^<&'] | Reference)* "'" 
[11]    SystemLiteral    ::=    ('"' [^"]* '"') | ("'" [^']* "'")  
[12]    PubidLiteral    ::=    '"' PubidChar* '"' | "'" (PubidChar - "'")* "'"

И W3C-Validator также принимает его.

...