首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >head.misc实体代表什么?

head.misc实体代表什么?
EN

Stack Overflow用户
提问于 2019-06-18 06:14:37
回答 1查看 130关注 0票数 0

我得到了head元素声明如下

代码语言:javascript
复制
<!ENTITY % head.misc "(script|style|meta|link|object)*">
<!ELEMENT head (%head.misc;,((title, %head.misc;, (base, %head.misc;)?) | (base, %head.misc;, (title, %head.misc;))))>

并被要求描述“head.misc实体代表什么?”

我所能找到的只有使用head.misc的DTD文件,还有一个简短的解释:“head.misc的元素只允许是HEAD元素的子元素,所以样式只允许是HEAD元素的子元素”,但它看起来不像是完整的答案。

我应该说它代表了哪些元素应该只在head元素标记中使用?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-18 06:37:22

以下是一些注释说明:

  • %head.misc; --只是对上面定义的实体的引用,所以可以用表达式(script|style|meta|link|object)*替换它。
  • , --逗号似乎是一个列表分隔符。
  • () --括号是分组的东西,如regex中的
  • ? --问号是一个零或一个量词(即左边的东西可以是0或1次,换句话说,它是可选的,但仅限于一个实例)。
  • * --星号是一个零或多个量词(左边的东西可以是0、1、2或任何其他次数-可选,但不限于一个实例)。
  • | --条形字符是or --即分组的左部分或右部分,但不能两者兼有(当然,原则是相同的)。

因此,head.misc后面的表达式可以这样解释:

  • head.misc是这些元素中任意数量的任意组合(包括空大小写,即零元素):
    • 脚本
    • 风格
    • 元数据
    • 链接
    • 对象

我应该说它代表了哪些元素应该只在head元素标记中使用?

不,因为下一条语句增加了两个可能的元素-- titlebase。据我所知,head可以是:

  • 零或多个script/style/meta/link/object标记
  • 其次是title
  • 后面跟着零或多个script/style/meta/link/object标记
  • 可选地,后面跟着base标记和零或多个script/style/meta/link/object标记

或者这个:

  • 零或多个script/style/meta/link/object标记
  • 其次是base
  • 后面跟着零或多个script/style/meta/link/object标记
  • 后面跟着title标记和零或多个script/style/meta/link/object标记

因此,似乎有两条规则共同表达了关于head中的标记的如下内容

  • 可以有任意数量(包括零)的script/style/meta/link/object标记。
  • 任何地方都必须有一个title标记
  • 任何地方都必须有零或一个base标记。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56642729

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档