正如this question中所述,html中的单引号要么变得更受欢迎,要么我们已经开始更频繁地注意它们。
无论如何,我有一个相关的问题。 w3schools(下方)中显示的HTML 4.01 Strict
doctype使用双引号。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
正如accepted answer中所述,单引号完全有效。但是,doctype中的引用值不一定是属性,因此允许单引号?换句话说,以下是有效的doctype吗?此外,如果这是有效的HTML,它是否被现代浏览器接受?
<!DOCTYPE html PUBLIC '-//W3C//DTD HTML 4.01//EN'
'http://www.w3.org/TR/html4/strict.dtd'>
此外,对于XML doctypes也是如此吗?
<?xml version='1.0' encoding='utf-8'?>
答案 0 :(得分:10)
是的,两者都有效。
请参阅SGML spec。在钻取doctype声明的所有链接的某个时刻,您将最终得到“system identifier”规范(包含引号的部分),其定义为:
( lit , "
system data [45] ,
lit ) | "
( lita , '
system data [45] ,
lita ) '
定义语法很奇怪,但似乎允许使用单引号或双引号(它与属性值定义类似)。
带有单引号的doctype似乎也validate就好了。