84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
如果要在頁面中動態修改css全域樣式,例如將頁面所有字體顏色改為紅色透過css可以這樣實作
*{color:red;}
而如果透過js,利用頁面中的按鈕修改所有元素樣式,即透過js點擊按鈕動態修改頁面中所有元素樣式字體顏色為紅色,應如何實現
闭关修行中......
我只能想到這個方法。
Array.prototype.slice.call(document.all).forEach(function (ele) { ele.style.color = 'red'; });
用css樣式相關的介面 stylesheet.insertRule或者stylesheet.addRule 這兩個都可以動態插入css樣式 相容性還可以 ie9+
stylesheet.insertRule
stylesheet.addRule
例如
// https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/insertRule myStyle.insertRule("#blanc { color: white }", 0);
需要刪除的時候還有deleteRule和removeRule兩個方法 可以查一下相關資料
deleteRule
removeRule
[].forEach.call(document.querySelectorAll('*'),function(a){ a.style.color = 'red';})
我只能想到這個方法。
用css樣式相關的介面
stylesheet.insertRule
或者stylesheet.addRule
這兩個都可以動態插入css樣式 相容性還可以 ie9+例如
需要刪除的時候還有
deleteRule
和removeRule
兩個方法 可以查一下相關資料[].forEach.call(document.querySelectorAll('*'),function(a){
a.style.color = 'red';
})