THML的全称为Hyper Text Markup Language,也就是超文本标记语言。关于HTML的标签MDN和W3C都有详细的文档说明。
空元素
一个空元素(empty element)可能是 HTML,SVG,或者 MathML 里的一个不可能存在子节点(例如内嵌的元素或者元素内的文本)的element。
HTML,SVG和 MathML的规范都详细定义了每个元素能包含的具体内容(define very precisely what each element can contain)。许多组合是没有任何语义含义的,比如一个<audio>
元素嵌套在一个<hr>
元素里。
在 HTML 中,通常在一个空元素上使用一个闭标签是无效的。例如,<input type="text"></input>
的闭标签是无效的 HTML。
在 HTML 中有以下这些空元素:
<area>
,<base>
,<br>
,<col>
,<colgroup>
,<command>
,<embed>
,<img>
,<input>
,<keygen>
,<link>
,<meta>
,<param>
,<source>
,<wbr>
,<track>
可替换元素
在 CSS中,可替换元素(replaced element)的展现效果不是由 CSS 来控制的。这些元素是一种外部对象,它们外观的渲染,是独立于 CSS 的。
简单来说,它们的内容不受当前文档的样式的影响。CSS 可以影响可替换元素的位置,但不会影响到可替换元素自身的内容。某些可替换元素,例如<iframe>
元素,可能具有自己的样式表,但它们不会继承父文档的样式。
CSS 能对可替换元素产生的唯一影响在于,部分属性支持控制元素内容在其框中的位置或定位方式。有关详细信息,请参阅本文下面的控制内容框中的对象位置。
典型的可替换元素有:
<iframe>
,<video>
,<embed>
,<img>
有些元素仅在特定情况下被作为可替换元素处理,例如:
<option>
,<audio>
,<canvas>
,<object>
,<applet>
HTML 规范也说了<input>
元素可替换,因为"image"
类型的<input>
元素就像<img>
一样被替换。但是其他形式的控制元素,包括其他类型的<input>
元素,被明确地列为非可替换元素(non-replaced elements)。该规范用术语小挂件(Widgets)来描述它们默认的限定平台的渲染行为。
用 CSS的content
属性插入的对象是匿名的可替换元素。它们并不存在于 HTML 标记中,因此是“匿名的”。
网友评论