是没有值的xml属性,有效吗?

And*_*eas 44 xml xml-attribute

我希望有一个没有任何值的XML属性,只有当它存在或不存在时才有一个含义.

这有效吗?

Dav*_*tis 55

必须使用以下语法指定属性:

名称Eq AttValue

其中Name是合法的XML名称,Eq =可选地前面或后面跟空格,AttValue是合法的属性值.

这个定义适用于XML 1.0XML 1.1.

如果您尝试指定如下属性:

<car owned/>
Run Code Online (Sandbox Code Playgroud)

那么不,那是无效的.如果您尝试以这种方式指定它:

<car owned=""/>
Run Code Online (Sandbox Code Playgroud)

然后是的,这是有效的.


Que*_*tin 18

没有.

XML中的布尔属性具有这种形式foo="foo".

即使在SGML中,您也必须提供值,(它是=您可以省略的名称和引号,这就是您<select multiple>在HTML中使用的原因).

  • 我很难解析您关于 SGML 中需要属性值的评论,然后是省略该值的示例。至于没有值的HTML属性从何而来;*作者应该知道,许多用户代理只识别布尔属性的最小形式,而不是完整形式。例如,作者可能想要指定:`&lt;OPTION selected&gt;` 而不是 `&lt;OPTION selected="selected"&gt;`* – https://www.w3.org/TR/html4/appendix/notes.html#sgmlfeatures (4认同)

Mic*_*Kay 5

您可以拥有一个唯一允许值为空字符串“”的属性。不过,我不确定这是否是好的设计;我通常会建议使用值为 true/false 的布尔属性,默认值为 false。

  • 但空字符串仍然是一个值。 (24认同)
  • 我的回答被否决了,大概是因为人们认为我错误地解释了这个问题。他们可能是对的。解释不清楚的问题有点像一门艺术,我们有时能答对,有时却做错。对答案的评论比不明原因的否决更有帮助。 (8认同)