扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
1、直接更改,比如:
创新互联公司专注于企业营销型网站建设、网站重做改版、新都网站定制设计、自适应品牌网站建设、H5高端网站建设、商城网站开发、集团公司官网建设、外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为新都等各大城市提供网站开发制作服务。
xID.style.display = "block"; // 更改display属性,会覆盖css中的定义。
xID.style.display = ""; // 取消js更改display属性,以css样式为准。
这里的xID,是通过id获取的标签。当然,也可能是通过tagName之类的获取的标签。
这种方式,简单直接。但是要修改大量的样式的时候,不适合。所以,我更推荐第二种方式。
2、更改类名
xID.className = "xx yy";
如果有多个类,就用空格隔开。前提,在样式中要有已有类的定义。比如这里的xx和yy类,在css中应该是写好的。
这种方式把所有的样式写在了css文件中,适合更改较多的样式以及炫酷的样式。js就只做一件事情:改类。至于这个类会把标签变成什么样子,交给css吧。
通过jquery也可以达到如上的效果:
$("#xID").css({
fontSize:"12px",
display:"block"
}); // 直接更改样式
$("#xID").addClass("xx"); // 增加删除类
$("#xID").removeClass("xx");
js是无法直接修改css文件的,但可以通过取对象的方式修改对象的样式,通常有两种方法:
1、改变className,但首先在样式表中预设定样式类。
例如:document.getElementById('obj').className='...';
2、改变cssText。
例如:document.getElementById('obj').style.height='100px';
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样式表的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
详细方法如下: 第一步:在连接样式表的元素里定义一个id,例如 link href="1.css" rel="stylesheet" type="text/css" id="css" 我定义的id是css。 第二步:写一个js函数,代码如下: script type="text/javascript" function change(a){ var css=document.getElementById("css"); if (a==1) css.setAttribute("href","1.css"); if (a==2) css.setAttribute("href","2.css");}/script这个函数的code可以放在页面的任何地方。 第三步:为改变页面的样式表的连接添加一个函数的触发事件,代码如下: a href="#" onClick="change(1)"1.css/a a href="#" onClick="change(2)"2.css/a 该效果在IE和FF下均测试通过,相信大家看完后因该非常明了,利用这个方法我们可以让浏览者自己选择需要显示的样式表,好比年迈者可以选择一个字体较大的样式表。这里需要留意的两点是:另外假如是改变整个页面的样式,你需要在样式表文件里定义body的高度为100%
举例1:
li onmouseover='this.className='AAAAA'' onmouseout='this.className='BBBBB''
鼠标经过 样式表变化 可用于 颜色变化等
举例2:
用户名:input type="button" class="input1" onclick="this.className='input2'"
鼠标点击 样式表变化
或者 单独写一个javascript函数
举例3:
script language=javascript
function ChangeStyle(idName,StyleName){
document.getElementById(idName).className=StyleName
}
/script
input type=button onclick="ChangeStyle(Text1,"div2")" vaule="变换"
div id=Text1 class=div1啊哈哈哈哈/div
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流