则只能获得一个空值,所以只能通过js去访问样式表了. document.styleSheets可以获得样式表的集合,因为浏览器之间有很大不同,访问样式表的单独规则也不同.DOM为每一个样式表指定一个cssRules集合,Mozilla和Safari正确实现了这个标准,不过可惜IE中定义这个集合为rules,因此可以使用以下代码来获得正确的对象: var oCssRules=document.styleSheets[0].cssRules||document.styleSheets[0].rules;
这样就可以获得不同浏览器的CSS集合了. 通过以下JS代码来获得样式表中的样式: 复制代码 代码如下: function GetCSS() { var oCssRules=document.styleSheets[0].cssRules||document.styleSheets[0].rules; alert(oCssRules[0].style.backgroundColor); }
styleSheets[0]表示第一个样式表引用,oCssRules[0]表示第一个样式规则(即#main{}的内容),通过style属性来访问具体的规则. 同理,更改该样式表规则代码如下: 复制代码 代码如下: function SetCSS() { var oCssRules=document.styleSheets[0].cssRules||document.styleSheets[0].rules; oCssRules[0].style.backgroundColor="red"; oCssRules[0].style.marginLeft="20px"; oCssRules[0].style.marginTop="20px"; }
但是需要注意的是,因为很多元素有可能关联同一个样式表,所以改变时需要慎重. 除了元素的style对象和css规则外,每个元素还有一个最终样式,最终样式用来告诉我们元素最后是如何显示在屏幕上的,也就是style和css重合计算后的样式.IE和DOM有两种方式来访问此样式,IE中通过currentStyle属性,DOM中使用getComputedStyle()方法. JS获得最终样式的方法如下: 复制代码 代码如下: function GetFinalCSS() { var oDiv=document.getElementById("main"); //访问style属性 alert(oDiv.style.backgroundColor); //IE方法 alert(oDiv.currentStyle.backgroundColor); //DOM方法,第二个参数为伪元素,如:hover,first-leeter之类 //alert(document.defaultView.getComputeStyle(oDiv,null).backgroundColor); }
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16. 人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。 众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?