22

我正在将“HTML4.5”方法应用于现有的 XHTML1.0 Strict 站点。这个想法是更改文档类型并应用与 HTML5 的新元素(<div class="aside">等)匹配的语义类,并在不破坏 Internet Explorer(IE) 的情况下做所有我能做到的事情(例如应用新的<input>类型属性)。

我遇到的唯一问题是 W3C 的验证器不喜欢&nbsp;or &copy;,而html5.validator.nu没有问题。

我知道 HTML5 验证器在这个阶段是实验性的。我应该用什么代替&nbsp;吗?如果是这样,是什么?

我在这个特定网站上的字符集是UTF-8.

4

2 回答 2

32

&nbsp;text/htmlHTML5 中很好,它在 W3 上为我验证。

不会验证的地方是 XHTML5。XML 中唯一的内置实体是&amp;&lt;&gt;和. XHTML1 通过 引用的DTD 引入了HTML 实体列表,但是(X)HTML5 不再使用DTD,这意味着在XML 序列化中您不能使用HTML 实体。&quot;&apos;<!DOCTYPE>

像这样的字符引用&#xA0;仍然可以。如果您以正确的编码提供您的页面,您可以直接包含一个 U+00A0 无换行符空格字符,而无需转义:  。(当然,如果您的文本编辑器无法在视觉上区分不间断空格和标准空格,那么编辑起来会很烦人。)

于 2010-11-08T21:00:58.703 回答
1

只需将所有替换&nbsp;&#160;

于 2012-01-24T10:29:37.813 回答