從 Chrome 63 版開始,您無法使用陰影選取器 ::shadow
和 /deep/
設定陰影根層級的內容樣式。
/deep/
合併器可做為子系選取器使用。x-foo /deep/ div
的運作方式與x-foo div
類似。::shadow
虛擬元素不會與任何元素相符。
移除的決定
已於 Chrome 45 版淘汰 ::shadow
和 /deep/
。所有參與者在 2015 年 4 月網頁元件聚會中做出這項決定。
遮蔽選取器最主要的問題在於違反封裝,並造成元件無法再變更內部實作的情況。
CSS 陰影部分規格已進階,做為陰影穿洞選取器的替代選項。「陰影部分」可讓元件作者以保留封裝的方式顯示已命名元素,同時仍允許頁面作者一次設定多個屬性的樣式。
如果網站使用 ::shadow 和 /deep/?
::shadow
和 /deep/
選取器只會影響舊版 Shadow DOM v0 元件。如果您使用的是 Shadow DOM 第 1 版,應該不需要變更網站上的任何項目。
您可以使用 Chrome Canary 確認網站不會因這些新的變更而中斷。如果您發現問題,請嘗試移除 ::shadow
和 /deep/
的所有使用情況。如果移除這些選取器的難度,請考慮從原生 shadow DOM 切換為使用陰影的 DOM Polyfill。只有在網站採用原生 shadow DOM v0 時,才需要進行這項變更。