XHTML5 需要 DOCTYPE/DTD 吗?

问题描述 投票:0回答:2

我正在创建一种翻译为 XML 的语言,它不支持 DOCTYPE/DTD。我可以使用 XHTML5 而不必指定

<!DOCTYPE html>
,还是我必须实现 DOCTYPE/DTD?我宁愿不这样做,主要是为了避免语言复杂性。

xml html xhtml doctype
2个回答
4
投票

XHTML5 必须使用 XML 媒体类型,例如

application/xhtml+xml
。 浏览器将始终以标准/无怪癖模式处理此类资源,因此将
<!DOCTYPE html>
放在开头没有任何效果,可以安全地省略。

HTML 生活标准说,14.1 用 XML 语法编写文档

如果需要,XML 文档可以包含 DOCTYPE,但这不需要符合本规范。”


2
投票

WHATWG 说:

在 XML 语法中,可以使用任何文档类型声明,也可以完全省略。

还有

<!DOCTYPE html>
定义是可选的,但是(...)

W3C 说:

[文档类型声明] 可以选择在 XHTML 语法中使用,但是 (...)

因此我们可以放心地假设 DOCTYPE 声明是可选的。
此外,快速而肮脏的测试表明,在最新的浏览器中,处理带有或不带有 doctype 声明的文件没有明显的差异。只要文件类型是

.xml
.xhtml

© www.soinside.com 2019 - 2024. All rights reserved.