2013-09-12 7 views
0

У меня есть следующие:Определите DTT ATTLIST, чтобы разрешить новый атрибут без значения?

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
    "http://www.w3.org/TR/html4/loose.dtd" 

    [ 
     <!ATTLIST a extra-attr CDATA #IMPLIED> 
    ]> 

<html> 
    <head> 
    <title>Title</title> 
    </head> 
    <body> 
    <a extra-attr>hola</a> 
    </body> 
</html> 

Что мне нужно:

  1. Значение атрибута присутствует: <a extra-attr="value"></a> должен быть действительным
  2. Значение атрибута нет: <a extra-attr></a>справедлива и

ответ

3

Как указано here:

Атрибут bareword является нарушением спецификации XML. Спецификация XHTML говорит о том, что лучший способ для таких случаев, когда HTML имеет одно слово атрибут (выбранный, проверенный, множественный и т. Д.) Заключается в использовании selected = "selected", checked = "checked" и т. Д. Анализатор SGML HTML (веб-браузер) игнорирует значение, которое оно задано, и XML-файл XHTML (хороший веб-браузер) подтвердит значение и проигнорирует его . Файл с выбранным = "selected" является действительным XHTML, в соответствии с программой проверки W3C .