js 获取样式
ele.style.attr(这样是获取),ele.style.attr="值"(这样是设置);
这样写能设置样式和获取内联样式,但是获取不了外部样式,嵌入样式
了解一下:
内联样式:
<p style="color:red">内联样式</p>
嵌入样式:
<style>
p{ color:red; }
<style>
<p>嵌入样式</p>
外部样式:
<link rel="stylesheet" href="path">
<p>外部样式</p>
怎么获取呢?
“DOM2 级样式”增强了 document.defaultView,提供了getComputedStyle()方法。
IE 不支持 getComputedStyle()方法,但它有一种类似的概念。在 IE 中,每个具有 style 属性的元素还有一个 currentStyle 属性。
currentStyle:该属性只兼容IE,不兼容火狐和谷歌 写法: ele.currentStyle["attr"]或者ele.currentStyle.attr; getComputedStyle:该属性是兼容火狐谷歌,不兼容IE 写法: window.getComputedStyle(ele,null)[attr]获取是window.getComputedStyle(ele,null).attr
currentStyle属性和getComputedStyle属性不能设置属性,只能获取
获取时可以这样写:
function getCss(obj,attr){
return obj.currentStyle ? obj.currentStyle[attr] : getComputedStyle(obj, null)[attr]
}