一、局部改变样式
调用方法:
改变className
<div
id="demo">测试</div>
<script>
document.getElementById('demo').className="test"
</script>
改变直接样式
<div
id="demo">测试</div>
<script>
document.getElementById('obj').style.backgroundColor="#003366"
</script>
二、全局改变样式
可以通过改变外链样式的的href的值实现网页样式的实时切换
<link
rel
=
"stylesheet"
type="text/css"
id="css"
href="firefox.css"
/>
<span
on
click="javascript:document.getElementById('css').href
=
'ie.css'">点我改变样式</span>
1、简单的方法,不管不顾,直接这样就可以:document.createStyleSheet().cssText
=
'标签{color:red'
+
//
这个注释只在当前JS中帮助理解,并不会写入CSS中
'width:300pxheight:150px}'
+
'.类名{……}'
+
'#ID们{……}'
//完活。我喜欢分号这样写,和指令书写的起始位置对齐比较好一点,尤其是后面有其它语句的时候。
2、完善一点的方法,防止重复添加,可以通过添加样式表ID并对其判断来实现:
if
(!document.styleSheets['要建立的样式表ID如theforever'])
{
//先检查要建立的样式表ID是否存在,防止重复添加
var
ss
=
document.createStyleSheet()
ss.owningElement.id
=
'要建立的样式表ID如theforever'
ss.cssText
=
'标签{display:inline-blockoverflow:hidden'
+
//
这个注释只在当前JS中帮助理解,并不会写入CSS中
'text-align:leftwidth:300pxheight:150px}'
+
'.类名{……}'
+
'#ID们{……}'
}
以上这篇用JavaScript动态建立或增加CSS样式表的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。