空元素(empty element)
空元素,可能是 HTML,SVG,或者 MathML 里的一個(gè)不存在子節(jié)點(diǎn)(例如內(nèi)嵌的元素或者元素內(nèi)的文本)的element。但是空元素可以有自己的屬性,要區(qū)分屬性和節(jié)點(diǎn)。
空元素中嵌套子節(jié)點(diǎn)是沒有語義含義的。
空元素一般是沒有閉合標(biāo)簽的,如果空元素使用了閉合標(biāo)簽,例如:<input></input> ,那么一般這個(gè)標(biāo)簽就會(huì)變得無效。
常見的空元素:
- <area>
- <base>
- <br>
- <col>
- <colgroup> when the span is present
- <command>
- <embed>
- <hr>
- <img>
- <input>
- <keygen>
- <link>
- <meta>
- <param>
- <source>
- <track>
- <wbr>
可替代元素(replaced element)
可替換元素的展現(xiàn)效果不是由 CSS 來控制的。這些元素是一種外部對(duì)象,它們外觀的渲染,是獨(dú)立于當(dāng)前文檔使用的 CSS樣式 的。一般來說當(dāng)前文檔的CSS樣式唯一能夠控制的是可替代元素在當(dāng)前文檔的位置。
常見的可替換元素:
典型的可替換元素
- <iframe>
- <video>
- <embed>
- <img>
特定情況下的可替換元素
- <option>
- <audio>
- <canvas>
- <object>
- <applet>
<input>
<input>在type為image的情況下可以像<img>一樣被當(dāng)做可替換元素,但是其他type類型下,被明確地列為非可替換元素。
CSS 中的 content
用 CSS content 屬性插入的對(duì)象是匿名的可替換元素。它們并不存在于 HTML 標(biāo)記中,因此是“匿名的”。