MDN 概念
一個空元素(empty element)可能是 HTML炒嘲,SVG蹬铺,或者 MathML 里的一個不可能存在子節(jié)點(例如內(nèi)嵌的元素或者元素內(nèi)的文本)的element尝哆。
舉例說明
img 標(biāo)簽一般使用方法
<img src="../images/avatar.png" alt="頭像圖片">
而不會寫成這樣
<img src="../images/avatar.png" alt="頭像圖片">這是頭像圖片</img>
- 空標(biāo)簽只有開始標(biāo)簽,沒有結(jié)束標(biāo)簽甜攀;即使添加結(jié)束標(biāo)簽也是無效的。
- 空標(biāo)簽沒有子節(jié)點內(nèi)容:即沒有在開始標(biāo)簽和結(jié)束標(biāo)簽之間的節(jié)點內(nèi)容规阀。
空標(biāo)簽列表
- <area>
- <base>
- <br>
- <col>
- <colgroup>
- <command>
- <embed>
- <hr>
- <img>
- <input>
- <keygen>
- <link>
- <meta>
- <param>
- <source>
- <track>
- <wbr>
MDN 概念
在中恒序,可替換元素(replaced element)的展現(xiàn)效果不是由 CSS 來控制的姥敛。這些元素是一種外部對象牡借,它們外觀的渲染,是獨立于 CSS 的。
換句話說葛峻,它們的內(nèi)容不受當(dāng)前文檔的樣式的影響此蜈。CSS 可以影響可替換元素的位置,但不會影響到可替換元素自身的內(nèi)容袄秩。某些可替換元素阵翎,例如 <iframe>元素郭卫,可能具有自己的樣式表背稼,但它們不會繼承父文檔的樣式蟹肘。
舉例說明
使用 img 標(biāo)簽說明
<img src="../images/avatar.png" alt="頭像圖片">
根據(jù)標(biāo)簽和屬性才能確定最終顯示內(nèi)容俯树。
例如:圖片在下載完成之前贰盗,無法確定其具體顯示內(nèi)容舵盈;
當(dāng)圖片下載完成之后,瀏覽器才能最終確定顯示內(nèi)容翘贮。一般可替換元素都有默認樣式,例如寬高扯再,但會受 CSS 的影響址遇。
例如:圖片在下載完成之后倔约,會有默認寬高,但往往不是我們需要的尺寸钾军,
所以我們使用 CSS 控制圖片寬高吏恭。雖然 CSS 可以控制可替換元素的屬性重罪,但無法改變具體顯示內(nèi)容剿配。
例如:標(biāo)簽最終呈現(xiàn)的內(nèi)容,顯然由 src 屬性控制茄唐,
而不能單純的靠 CSS 來控制或修改圖片的最終顯示內(nèi)容琢融,除非更換 src 資源。
可替換標(biāo)簽列表
典型可替換元素
- <iframe>
- <video>
- <embed>
- <img>
特定情況下作為可替換元素
- <option>
- <audio>
- <canvas>
- <object>
- <applet>