扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
1、简单的方法,不管不顾,直接这样就可以:
网站设计、成都做网站,成都做网站公司-成都创新互联公司已向1000多家企业提供了,网站设计,网站制作,网络营销等服务!设计与技术结合,多年网站推广经验,合理的价格为您打造企业品质网站。
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样式表的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
[img]JavaScript动态建立或增加CSS样式表,参考如下:
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们{……}'
;
}
如果网页中一个
id为“no”的标签,暂且当div标签来tell;
想要在js中设置这个div的css样式,很一般的做法是:
var
obj
=
document.getElementByIdx_x_x('no');
obj.style.width
=
'400px';
obj.style.height
=
'300px';
如果要设置一堆又一堆的css样式呢,太麻烦了把、
一般情况下都会结合css来添加className或者改变className达到想要的效果,但是如果你create一个元素,难道还想这样简单点?那就要想别的办法了~
于是大家就写了一个又一个的函数,经典的两个是:
var
obj
=
document.getElementByIdx_x_x('no');
function
setStyle(obj,
css)
{
for(var
attr
in
obj){
obj.style[attr]
=
css[attr];
}
}
setStyle(obj,{width:"400px",height:"300px"});
当然还有更简单的,cssText:
var
obj
=
document.getElementByIdx_x_x('no');
obj.style.cssText
=
"width:400px;
height:300px;";
当然这种方法对于create的元素初始化css样式来说很简单很方便。
以上就是小编为大家带来的js中用cssText设置css样式的简单方法的全部内容了,希望对大家有所帮助,多多支持脚本之家~
在页面内用JS操作CSS除非用AJAX,但操作页面内的样式的话,是可以的。操作样式分为改变直接样式,改变className和改变cssText三种
一、局部改变样式
调用方法:
改变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
选中标签,然后用style设置样式
div id="h5course"HTML5学堂(WX号),技术干货文章分享/div
script
var box = document.getElementById('h5course');
box.style.color = '#39f';
box.style.border = '2px solid #000';
/script
例如改变背景色:
1234567div id="changeColor"使用JS改变背景色/divscriptvar cc = document.getElementById("changeColor");cc.style.backgoundColor="#000"; //将背景色改为黑色cc.style.fontSize="20px"; // 将文字大小改为20px,等号右边也可以写为20+"px"cc.style.color="#fff"; //将文字颜色改为白色/script
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流