为什么此XHTML-MP代码未通过W3C验证?
-
29-09-2019 - |
题
维基百科的例子 XHTML-MP:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.1//EN"
"http://www.openmobilealliance.org/tech/DTD/xhtml-mobile11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>Hello</title>
</head>
<body>
<p>Hello <a href="http://example.org/">world</a>.</p>
</body>
</html>
这失败了 W3C验证 与错误 输入不正确,UTF-8表示编码!字节:0xA9 0x20 0x32 0x30
即使您添加 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
并告诉验证器是UTF8,它给出了此错误。
如果删除了XHTML-MP Doctype,则可以正常工作。有什么交易?
解决方案
问题在于外部DTD。如果您将Doctype更改为此,则可以验证:
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN"
"http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
其他提示
http://mobiready.com/launch.jsp?locale = en_en 验证它正常。 Wierd
另外,您无需使用1.1即可使用JavaScript。尽管它无法在W3的检查器上验证,但
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
几乎所有JavaScript支持的手机都可以正常工作。
不隶属于 StackOverflow