我正在寻找一个参考,以确保我正确地禁用了一个元素。当XHTML问世时,我总是被教导禁用这样的元素:
<input type="submit" disabled="disabled" />
XHTML就是通过遵循更多规则来使HTML语法更严格。但是,然后我去了W3C的HTML5工作草案并注意到following on their boolean attributes(例如禁用):
<label><input type=checkbox checked name=cheese disabled> Cheese</label>
我的意思是,看起来即将推出的HTML5语法将更加松散,就像XHTML之前的旧学校时代一样。也许我错过了一些东西。
所以,问题是:我是否应该使用HTML5语法样式(W3C工作草案中的样式)来编写我在我的网站上编写的新HTML(我使用的是HTML5 doctype)?
答案 0 :(得分:3)
是关于通过遵循更多规则来使HTML语法更严格的。
实际上规则较少。他们删除了例外。例如,“必须引用属性值,除非该值符合某些条件”变为“必须引用属性值”。
当然,然后你添加了HTML兼容性指南,因为XHTML从未真正起飞,几乎每个人都将它作为text / html服务,导致“不能拥有内容的元素必须省略结束标记”成为“不能使用的元素”要求内容必须省略结束标记,并使用自闭标记语法“。
我的意思是,看起来即将推出的HTML5语法会更松散,就像XHTML之前的旧学校那样。
语法规则基本上包含HTML和XHTML中允许的所有内容,两者之间的差异落在XHTML端。 (例如<foo />
表示<foo>
而非<foo>>
)。
我应该使用HTML5语法样式(W3C工作草案中的样式)
关于你使用的风格的问题有点主观。遗漏可选事物和非事物显性的简洁性都是有益的。
如果您使用HTML5,那么您应该编写有效的HTML5。您提供的示例并非唯一可接受的方法。
答案 1 :(得分:0)
如果您使用的是HTML5文档类型,那么是什么让您认为不使用HTML5语法? HTML5 不是XML变体 - 它是 HTML 。
那就是说,我个人总是引用属性值,因为它似乎没有这么做。
答案 2 :(得分:0)
这篇关于W3C的博文应该说清楚:HTML 5, one vocabulary, two serializations。
简而言之,HTML5允许您使用HTML语法或XML语法 - 两者同样有效,因此您可以选择。
就个人而言,我会使用HTML语法,因为它更简单,而且HTML不是基于XML,所以我认为没有任何理由使用XML语法。