作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我看到一些相互矛盾的信息,即 XHTML 文档也必须将自己声明为 XML。
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
但是,在其他地方(包括 w3.org),DOCTYPE 必须 是第一个
tag
声明。
W3既然这么说,那肯定是真的。但是,我可能有一些页面/应用程序遵循第一种方法。我的风险是什么?
编辑:我刚刚通过 W3 Validator 运行了一个页面有和没有 XML 声明,它通过两种方式。那么,在这一点上,我猜这只是一种“风格”。
最佳答案
<?xml version="1.0" encoding="utf-8"?>
...是 XML 的默认版本和编码,因此您根本不需要它。如果您将 XHTML 作为文本/html 提供,它可能根本不应该存在。
However, in other places I'm seeing (including w3.org) that the DOCTYPE must be the first tag.
听起来有些困惑……DOCTYPE 不是标记, 也不是(称为 XML 声明,看起来像处理指令,但它也不是其中之一) .
如果您同时包含两者,则 XML 声明必须放在第一位。诀窍是 IE6 的 DOCTYPE 嗅探器只检测标准模式 DOCTYPE,如果它们是页面上的第一件事,这意味着你不能使用 XML 声明并且你必须坚持使用 XML 1.0 和 UTF-8 编码(这不是很好损失)。
关于html - 我是否需要使用 XHTML 文档类型在页面上声明 XML?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1335133/
我是一名优秀的程序员,十分优秀!