【发布时间】:2015-12-23 12:50:56
【问题描述】:
在 XHTML 文件的开头,为什么我们在以下构造中使用“xml”:
<?xml version = "1.0" encoding = "utf-8" ?>
不应该是:
<?xhtml version = "1.0" encoding = "utf-8" ?>
【问题讨论】:
标签: xml xhtml xhtml-1.0-strict xml-declaration
在 XHTML 文件的开头,为什么我们在以下构造中使用“xml”:
<?xml version = "1.0" encoding = "utf-8" ?>
不应该是:
<?xhtml version = "1.0" encoding = "utf-8" ?>
【问题讨论】:
标签: xml xhtml xhtml-1.0-strict xml-declaration
<?xml ...?> 构造,
<?xml version = "1.0" encoding = "utf-8" ?>
是一个XML declaration,xml 部分不会因 XML 文件类型而异。对于 XHTML 文件(根据定义为 XML),它应该是相同的。
注意事项:
xml 部分已修复;它在 XML 声明中永远不会发生变化。<?xhtml ... ?>声明;使用<?xml ... ?>。XHTML Prolog 示例:
根据W3C Recommended list of Doctype declarations,您还可以在其中找到其他示例:
<?xml version = "1.0" encoding = "utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>An XHTML 1.0 Strict standard template</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
</head>
<body>
<p>… Your HTML content here …</p>
</body>
</html>
【讨论】:
问:为什么我们使用<?xml..?>?
A:因为这是规范要求我们必须使用的。
问:为什么规范会这样说?
A:因为 XHTML 和 XML 之间的关系是 XHTML 是一个特定的 XML 词汇表。 XML 声明用于向 XML 解析器提供信息(关于 XML 的版本和文件的编码),并且 XML 解析器处理任何 XML 文件,无论使用什么词汇。
当然,它可以设计不同。但事实并非如此。
【讨论】: