代码之家  ›  专栏  ›  技术社区  ›  brad

单引号在doctype中有效吗?

  •  10
  • brad  · 技术社区  · 15 年前

    如上所述 this question ,HTML中的单引号要么变得更流行,要么我们开始更频繁地注意到它们。

    不管怎样,我有一个相关的问题。这个 HTML 4.01 Strict doctype,如所示 w3schools (以下)使用双引号。

    <!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'?>
    
    1 回复  |  直到 15 年前
        1
  •  10
  •   molf    15 年前

    是的,两者都有效。

    SGML spec . 在钻取doctype声明的所有链接时,您将在 system identifier “规范(包含报价的部分),其定义如下:

    ( lit , "
    system data [45] ,
    lit ) | "
    ( lita ,    '
    system data [45] ,
    lita )  '
    

    定义语法很奇怪,但似乎允许使用单引号或双引号(与属性值定义类似)。

    带有单引号的doctype似乎 validate 很好。