【发布时间】:2014-10-08 10:08:00
【问题描述】:
我从 90 年代就开始编写 HTML,但我刚刚发现了 colgroup 和 col 元素。 According to MDN、col 是一个 void 元素,结束标记是 forbidden。
标签省略:开始标签是强制性的,但是,因为它是一个空元素, 禁止使用结束标签。
我以前从未听说过虚空元素。 MDN 没有关于 void 元素的页面,但 empty element page 说:
注意:在极少数情况下,空元素被称为 void 元素。这是一个不恰当的名称,应避免使用。
但是,W3 spec 仅指 void 元素,从未提及空元素:
一个 void 元素是一个其内容模型不允许它 在任何情况下都有内容。空元素可以有 属性。
所以我想知道:
- 如果它们是同一个东西,它们应该被称为空元素而不是空元素吗?在这种情况下,W3 规范是否已过时且不可信?还是应该优先考虑 W3 规范,即使它已经过时?
- 如果它们不是同一个东西,
<col span="2" />是有效语法还是应该是<col span="2">(不带斜线),因为结束标记是被禁止的?我可能对“结束标签”有错误的想法,但我一直认为/>(如<br />和<img />)是某种结束标签。
【问题讨论】:
-
我认为没有任何理由相信第三方来源而不是第一方来源,尤其是当第三方来源本身与它所说的相矛盾时,无论如何在自己的文本中交替使用两个术语。
-
你为什么不尝试其中一个,看看它是否有效
-
Void 元素有一种特殊的表示方式,称为self-closing tags。空元素将有单独的结束标签但没有内容。