因此,我正在構建一個基於React的平臺,並且該平臺已經具有全局CSS,已經以某種方式爲所有客戶端設置了全局CSS。如何在特定網站的React組件中調用特定的CSS樣式表?
在一個公共組名下的子公司的子集想要一個新的粘性廣告組件,必須改變CSS一點,所以頁腳不會被掩蓋。因此通常,我會檢查我們的全局變量值是什麼,window.client.group,如果它是特定的組,則通過javascript在聯屬js文件(我們的舊通用平臺)中添加css或css樣式表。
所需要的新的CSS是:
@media (max-width:767px){
#ad201 {width:100%;position:fixed;bottom:0;left:0;z-
index:99999;margin:0;border:1px solid rgb(232, 232, 232);background-
color:#fff;margin: 0 !important;}
.Footer .container {padding-bottom:50px;}
}
在陣營雖然,什麼是做到這一點的最好和最合適的方法是什麼? 正如您所看到的,需要參與媒體查詢會很複雜。
我已經開始使用group和matchMedia,但引入CSS的最佳方式是什麼?整個樣式表? (stickyAd.css?一些其他方式?以及有關如何操作的提示?)
const group = (window.client.group).toLowerCase();
console.log(group);
const mq = window.matchMedia("(max-width: 767px)");
if ((mq.matches) && (group === 'premiere')) {
// bring in the new css
} else {
// do nothing
}
感謝您的建議!
你可以看看這個:https://github.com/styled-components/styled-components或只是谷歌爲「javascript動態添加css – Hardy
是否有任何理由,你不能只是在你的CSS中的某個地方申報一個新的類,它將添加所需的規則時,添加到您檢測到的對象?媒體查詢可以在類聲明內聲明 – philraj
謝謝@Hardy,將檢查它 – nyhunter77