空属性

问题描述:

在HTML中,你可以有空属性,甚至没有=""空属性

<input type="checkbox" selected></input> 

然而,在XHTML中,你需要至少一个空字符串:

<input type="checkbox" selected="selected"></input> 

什么是相当于XHTML中的空HTML属性?它是空字符串,还是属性名称作为字符串,或true或其他?

+0

将'checkbox'元素更改为正确的'input'元素。我不知道我在想什么。 – trysis

http://www.w3.org/TR/2000/REC-xhtml1-20000126/#h-4.5

相当于XHTML空HTML属性是属性名称。

+0

这真的很酷!但为什么会发生这种情况?为什么XHTML不像他们称之为的那样使用“非最小化属性”,但HTML呢?这与XML有关吗? – trysis

+1

@trysis,根据定义,XML遵循所有XML规则,并且在XML中,属性规范始终为name =“value”形式。 XHTML(包括XML序列化中的HTML5)可以按照喜好定义值,而在XHTML 1.0中,它们使用属性名称作为值进行了相当简单的选择。这遵循HTML传统,在旧HTML中,像'selected'这样的属性实际上是属性*值*,并且名称是隐含的。 –