爱淘FE

Posted by:
Mickey

每件事最后都会是好事,如果不是好事,说明还没到最后

549

样式种种 document.defaultView.getComputedStyle

 

首先要清楚:document.getElementById("div1").style.display ,若元素(标签内)的"style"对象并没有定义这个属性,则返回空。

其次,要返回页内样式表定义的类,那么可以使用DOM样式表对象来访问:

var oCssRulers = document.styleSheets[0].cssRulers || document.styleSheets[0].rulers;

(前者是DOM方法,后者是IE私有方法)

alert(oCssRulers[0].style.display);

最后,当无法确定元素的样式在哪里被定义,或元素同时被内联样式和CSS规则定义又不能确定哪一处定义是最优先级的,这时需要获取其最终呈现的样式:

IE为每个元素提供的currentStyle对象;

DOM则从document.defaultView对象中访问getComputedStyle()方法;

以上两者除了在计算方式上有差异外,在返回值的表现上也不尽相同,例如:颜色、尺寸等。

 

发表评论


back up ↑