js的样式操作回顾

今天回顾了一下element.style相关的一些方法。当我们需要用Js对一个元素的css样式进行一些额外的控制时,我们需要用到这些方法。

1.动态的设置样式。

习惯的做法是:

1 <div id="test">我是中国人</div>
2
3 <script type="text/javascript">
4   vat ele = document.getElementById("test");
5   ele.style.fontSize = "24px";
6 </script>

这样做是无可厚非的,也是没什么问题的。另外一种写法是是基于函数调用思维,如

ele.setProperty("fontsize","24px",""); //这里第三个参数是优先级命令!important的设置

相对的有ele.getPropertyValue("fontsize"),ele.removeProperty("fontsize");

但是这些方法在IE下是不支持的。如果希望兼容性好点,应该考虑第一种做法。

2.cssText和getAttribute("style")

它们都是用来获取样式属性,区别是cssText获取的是全部的属性列表(键值列表模式),getAttribute获取的是设置值的字符串(整体设置模式)。

这里的getAttribute("style")不兼容IE。

3.style对象只是单纯获取元素的“行内样式”,而不能获取html页面内部定义的样式表或者使用link元素、@import命令导入的外部样式表。

例如:

1 <div id="test">我是中国人</div>
2
3 <script type="text/javascript">
4   vat ele = document.getElementById("test");
5   ele.style.fontSize = "24px";
6 </script>

运行后,返回的是一个空值。
怎么办?这是需要用到document对象的styleSheets集合,该集合包含了文档中所有样式表的引用。

注意:Opera不支持该对象,Safari部分支持

对于styleSheets集合,DOM对集合里面的每个样式表定义了一个cssRule集合,包含样式表的所有规则。IE下支持该集合,但是却预留了rules集合以供使用。
具体用法:

1 <div id="test">我是中国人</div>
2
3 <script type="text/javascript">
4   vat ele = document.getElementById("test");
5   ele.style.fontSize = "24px";
6 </script>

转载于:https://www.cnblogs.com/ilexcai/archive/2011/08/19/2145998.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值