Js如何动态修改css样式
如何动态修改css样式
一、使用obj.className来修改样式表的类名
function changeStyle1() {
var obj = document.getElementById("btnB");
obj.style.backgroundColor= "black";
}
缺点:会覆盖原有的style
二、使用obj.style.cssTest来修改嵌入式的css
function changeStyle2() {
var obj = document.getElementById("btnB");
obj.style.cssText = " display:block;color:White;
}
缺点:会覆盖原有的style
三、使用obj.className来修改样式表的类名
function changeStyle3() {
var obj = document.getElementById("btnB");
//obj.className = "style2";
obj.setAttribute("class", "style2");
}
优点:不会覆盖
四、使用更改外联的css文件,从而改变元素的css
<link href="css1.css" rel="stylesheet" type="text/css" id="css"/>
function changeStyle4() {
var obj = document.getElementById("css");
obj.setAttribute("href","css2.css");
}
实现整体页面换肤的最佳方案
五、通过js更新这个元素的class属性
function addClass(element,value) {
if (!element.className) {
element.className = value;
} else {
newClassName = element.className;
newClassName += " "; //这句代码追加的类名分开
newClassName += value;
element.className = newClassName;
}
}