在有些做项目项目中,需要用户自定义组件的CSS样式并即时改变组件样式状态。
1. 增加 style样式
style = document.createElement('style');
//设置id为了更新和删除时查询方便
style.id = "style_" + IdGen.uuidv4();
style.textContent = ".custom { margin: 20px }"
style.setAttribute('type','text/css')
document.head.appendChild(style);
2. 更新 style样式
const element = document.getElementById(style.id);
if (!!element) {
element.innerHTML=this.cssCode;
}
3. 删除 style样式
const element = document.getElementById(style.id);
document.head.removeChild(element);
4.其他使用方式
const p = document.querySelector('p');
const style = document.createElement('style');
style.textContent = 'p { color: green; }';
document.body.insertBefore(style, p);
const link = document.createElement('link');
link.href = 'style.css';
link.rel = 'stylesheet';
link.media = 'screen';
link.type = 'text/css';document.head.appendChild(link);