通过JS修改CSS样式有两种方法:
- 修改某一属性的值
- 修改某一元素的class名,使其被别的样式修饰
修改某一属性的值
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<script type="text/javascript">
function changeBg(){
var bgColor="";
for(var i = 0;i<6;i++){
bgColor += ""+Math.round(Math.random()*9);
}
document.body.style.backgroundColor="#"+bgColor;
}
document.onclick = changeBg;
</script>
</head>
<body>
</body>
</html>
如上,通过for循环建立一个6位数字构成的字符串再加上#,形成能够作为颜色属性的字符串(颜色有一种表达方式就是这样。如:#324254),然后将这个值赋给body的样式属性background-color(JS中写法位backgroundColor),达到我们修改样式的目的
修改某一元素的class名
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<script type="text/javascript">
function chg(){
document.getElementById("up").className="solid";
}
</script>
<style type="text/css">
.solid{
width: 160px;
padding: 6px;
text-align: center;
border-right: #222 4px solid;
border-top: 4px solid #ddd;
border-left: 4px solid #ddd;
border-bottom: 4px solid #222;
background-color: #ccc;
}
</style>
</head>
<body>
<div id="up">whoami</div>
<input type="button" name="a" value="点击" οnclick="chg();">
</body>
</html>
通过 JS,将id为“up”的元素的class名改为solid,使其被.solid样式修饰,达到我们修改样式的目的
以上两种方式能够达到我们修改元素样式的目的
希望能够帮助大家,如果有错,欢迎大家批评指正,也欢迎将不懂的地方评论出来,我们一起讨论学习