web-dev-qa-db-ja.com

&nbspによりHTML5検証が失敗します

現在、既存のXHTML1.0Strictサイトに「HTML4.5」アプローチを適用しています。アイデアは、Doctypeを変更し、HTML5の新しい要素(<div class="aside">など)に一致するセマンティッククラスを適用し、Internet Explorer(IE)を壊すことなく(たとえば、新しい<input>タイプ属性を適用する)、私が回避できるすべてのことを行うことです。

私が遭遇した唯一の問題は、W3Cのバリデーターが&nbsp;または&copy;を好まないのに対し、 html5.validator.n は問題がないことです。

HTML5バリデーターはこの段階で実験的なものであることを私は知っています。 &nbsp;を何かに置き換える必要がありますか?もしそうなら、何?

この特定のサイトの私の文字セットはUTF-8です。

22
isNaN1247

&nbsp;text/html HTML5で問題なく、W3で検証されます。

しない検証する場所はXHTML5です。 XMLに組み込まれているエンティティは、&amp;&lt;&gt;&quot;、および&apos;のみです。 XHTML1は、<!DOCTYPE>によって参照されるDTDを使用してHTMLエンティティリストを取り込みましたが、(X)HTML5はDTDを使用しなくなったため、XMLシリアル化ではHTMLエンティティを使用できません。

&#xA0;などの文字参照は引き続き問題ありません。また、適切なエンコーディングでページを提供している場合は、エスケープせずにU + 00A0ノーブレークスペース文字を直接含めることができます:。 (もちろん、テキストエディタが休憩なしのスペースと標準のスペースを視覚的に区別しない場合、編集するのは面倒です。)

32
bobince

すべての&nbsp;&#160;に置き換えるだけです。

0
Mehedi