重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
之前在论坛上面看到论坛后台可以把所有页面的标题,内容,字体,背景,颜色等css属性都列出来了,并且可以随意重新设置,保存以后前台页面就可以根据设置动态的更新显示了,之前就有了一点想法,做了一个demo.jsp,然后在这个页面引入一个style.css样式文件,并且在这个样式文件中定义了一些属性,然后定义了一个java类来对应样式文件的属性
为淇滨等地区用户提供了全套网页设计制作服务,及淇滨网站建设行业解决方案。主营业务为成都网站设计、成都网站制作、淇滨网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
用css样式相关的接口 stylesheet.insertRule或者stylesheet.addRule 这两个都可以动态插入css样式 兼容性还可以 ie9+
比如
myStyle.insertRule("#blanc { color: white }", 0);
需要删除的时候还有deleteRule和removeRule两个方法
1、简单的方法,不管不顾,直接这样就可以:
document.createStyleSheet().cssText
=
'标签{color:red;'
+
//
这个注释只在当前JS中帮助理解,并不会写入CSS中
'width:300px;height:150px}'
+
'.类名{……}'
+
'#ID们{……}'
;
//完活。我喜欢分号这样写,和指令书写的起始位置对齐比较好一点,尤其是后面有其它语句的时候。
2、完善一点的方法,防止重复添加,可以通过添加样式表ID并对其判断来实现:
if
(!document.styleSheets['要建立的样式表ID如theforever'])
{
//先检查要建立的样式表ID是否存在,防止重复添加
var
ss
=
document.createStyleSheet();
ss.owningElement.id
=
'要建立的样式表ID如theforever';
ss.cssText
=
'标签{display:inline-block;overflow:hidden;'
+
//
这个注释只在当前JS中帮助理解,并不会写入CSS中
'text-align:left;width:300px;height:150px}'
+
'.类名{……}'
+
'#ID们{……}'
;
}
以上这篇用JavaScript动态建立或增加CSS样式表的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。