重寫 Shadow 根元素中的樣式
Shadow DOM 的關鍵特性之一是它的樣式隔離。這可以防止外部 CSS 規則影響影子根中的元素,從而確保封裝性和模組化。然而,當您需要覆蓋影子根中定義的樣式時,它也會帶來挑戰。
問題
根據您的查詢,您正在嘗試覆蓋CSS 屬性在影子根元素中定義,特別是在名為.the-class-name 的類中。然而,如果不直接在開發工具中操作影子根的樣式,您就無法實現這一目標。
問題
重寫 CSS 規則的傳統方法,例如使用全域 CSS 規則或 :host 選擇器,由於其隔離而無法使用影子根元素。 Shadow DOM 可防止全域 CSS 規則洩漏到其範圍內,且 :host 選擇器僅適用於託管影子根的元素,不適用於影子根內的元素。
解決方案
幸運的是,有一種解決方法可以讓您將新樣式註入到影子根中直接:
var host = document.querySelector('host-element'); // The element that holds the shadow root var style = document.createElement('style'); style.innerHTML = '.the-class-name { property-name: my-value; }'; host.shadowRoot.appendChild(style);
此程式碼動態建立一個新的
注意:此解決方法僅在 Shadow DOM 模式設定為「開啟」時才有效。
更新(適用於Chrome 73 和Opera 60)
使用Chrome 73 和Opera 60 發布後,一種新技術可用於覆蓋影子根中的樣式:
var sheet = new CSSStyleSheet; sheet.replaceSync('.color { color: pink }'); host.shadowRoot.adoptedStyleSheets.push(sheet);
此方法涉及建立CSSStyleSheet 物件並將其新增至影子根的採用的StyleSheets 陣列中。然後可以使用新的樣式表覆蓋現有樣式。
以上是如何覆蓋影子根元素中的樣式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

在本週的Web平台新聞世界中,Google搜索控制台可以更輕鬆地查看爬行的標記,我們了解到自定義屬性

在本週的新聞中,Wikipedia有助於識別三個慢單擊處理程序,Google Earth進入網絡,CSS中的SVG屬性獲得了更多的支持,以及在殭屍cookies的情況下該怎麼做。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SublimeText3漢化版
中文版,非常好用

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

Atom編輯器mac版下載
最受歡迎的的開源編輯器

禪工作室 13.0.1
強大的PHP整合開發環境