方式有:1、通过node.style.cssText="css表达式1;css表达式2;css表达式3"的方式;2、先在CSS样式表中对特定的类设置样式,再通过node.classname="类名"对类的样式设置附加到该node节点上来。
本教程 *** 作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。
下面我给大家介绍的是原生js更改CSS样式的两种方式:
1通过在javascript代码中的node.style.cssText="css表达式1;css表达式2;css表达式3 "的方式直接更改CSS样式。
2先在CSS样式表中对特定的类如“active类”设置样式(这里的active类是假定的,暂时不存在),然后再在javascript代码中通过node.classname="active"使得CSS样式表中对active类的样式设置附加到该node节点上来。
下面是详细介绍,首先是html的代码:
<style type="text/css"> div { float: left; padding: 20px; margin: 10px; border: 1px solid #000; background-color: #fff; color: #000; } .active { background-color:blue } </style> <body> <div class="root"> </div> </body>
首先使用上面所说的第一种方式更改css样式,写入如下的javascript代码:
<script type="text/javascript"> var root=document.getElementsByClassName("root")[0]; root.style.cssText="background-color: blue;color: #fff;"; </script>
运行结果为:
然后使用上面所说的第二种方式更改css样式,写入如下的javascript代码:
<script type="text/javascript"> var root=document.getElementsByClassName("root")[0]; root.className="active";</script>
同样运行结果为:
总结:这两种方式结果相同,但就 *** 作过程而言,第二种方式也就是“node.classname”的方式使得css和js的写入分隔开来,显然更加合理有序一些。如果css语句比较简单的话,这两种方式没有差别,但若css语句比较复杂的话,显然第二种方式比较有条不紊。
推荐学习:css视频教程
以上就是原生js如何修改css的详细内容,
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)