Xhtml 验证器错误 "not reserved name"

Xhtml validator error "not reserved name"

我是 XHTML 的新手,我一直收到此错误并且无法在任何地方找到解决方案。

这是错误: error.png

这是我的代码:

<!DOCTYPE html public "-//project//test.xhtml">
 <html>
  <head>
  <title>Tools</title>
  <link href="oof.css" rel="stylesheet"type="text/css">
  </head>
   <body>
    <div class="page">

你的语法有很多错误。

  • LINK 标签是自闭标签。
  • DOCTYPE html public "...." 定义了一些信息。 Read about it here
  • 每个开始标签都有一个结束标签

它应该是这样的

<!DOCTYPE html public "-//project//test.xhtml">
<html>
<head>
    <title>Tools</title>
    <link href="oof.css" rel="stylesheet" type="text/css" />
</head>
<body>
    <div class="page"></div>
</body>
</html>

<!DOCTYPE html public "-//project//test.xhtml"> 不是 XHTML 文档类型。

您收到的特定错误是因为标识符必须是 PUBLICSYSTEM 并且区分大小写。

Doctype 需要引用您要验证的 DTD,而不是 XHTML 文档。

大多数 XHTML 文档将使用此文档类型:

<!DOCTYPE html 
     PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

但是,在 2018 年使用 XHTML 1.0 没有什么意义。您最好改用 HTML 5。

如果您正在使用 HTML 5 的 XML 序列化,那么您根本不会使用 Doctype。

尽管如此,大多数人并没有从使用 XML 中获得任何好处,最好还是写成 HTML。使用 Doctype:

<!DOCTYPE html>

…然后仅出于历史原因在浏览器中触发标准模式。