回答編集履歴
1
訂正
answer
CHANGED
@@ -9,5 +9,9 @@
|
|
9
9
|
|
10
10
|
ご提示のコードは`document.documentElement`から取得されていますから、1番目のものに当たると思うのですが、その場合に取得できるのはインラインスタイルのみのようですね。
|
11
11
|
|
12
|
-
解決方法ですが、`document.styleSheets[0].cssRules[0]`のような形式でCSSルールを取得して書き換えるのがいいでしょう。
|
12
|
+
~~解決方法ですが、`document.styleSheets[0].cssRules[0]`のような形式でCSSルールを取得して書き換えるのがいいでしょう。
|
13
|
-
現実的には`:not(#markerRule)`みたいな意味を持たない属性セレクタを挿入しておいて、それを目印に`document.styleSheets`を全部なめる、というのはいかがでしょうか。
|
13
|
+
現実的には`:not(#markerRule)`みたいな意味を持たない属性セレクタを挿入しておいて、それを目印に`document.styleSheets`を全部なめる、というのはいかがでしょうか。~~
|
14
|
+
|
15
|
+
と思ったのですが、気になっていろいろサンプルを書いてみたところ、:rootのインラインがオリジンで優先されて継承されますね……
|
16
|
+
[https://jsfiddle.net/Lhankor_Mhy/tz2x90d5/1/](https://jsfiddle.net/Lhankor_Mhy/tz2x90d5/1/)
|
17
|
+
考えられるのは、子要素に別のスタイルが当たっているとかでしょうか……
|