陰影樹

Shadow tree 是一組隱藏的 DOM 節點,其最頂層的 節點 是一個 shadow root。Shadow root 是 Shadow DOM 的最頂層節點,不屬於常規文件的 DOM 樹。

Shadow root 透過一個稱為其 host 的特定 DOM 節點連線到另一個節點樹。這個 host 可以是另一個 shadow tree 的一部分,也可以是常規 DOM 樹的一部分。Shadow root host 的節點樹有時被稱為 light tree

Shadow tree 的隱藏 DOM 節點通常不受 shadow tree 外部任何內容的影響,反之亦然。Shadow boundary,即 shadow DOM 結束和常規 DOM 開始的地方,是可以穿越的,但只能非常刻意地進行。

  • 要從外部對 shadow tree 節點進行指令碼操作,需要使用特殊的 Shadow DOM API 來訪問。
  • 要從外部為 shadow tree 設定樣式,可以透過 CSS scopingCSS shadow parts 來實現。