Reading non-inline CSS style info from Javascript
The style
property of a DOM element refers only to the element's inline styles.
Depending on the browser, you can get the actual style of an element using DOM CSS
In firefox, for example:
var body = document.getElementsByTagName("body")[0];
var bg = window.getComputedStyle(body, null).backgroundColor;
Or in IE:
var body = document.getElementsByTagName("body")[0];
var bg = body.currentStyle.backgroundColor;
In this case, you'll want the computedStyle
on the Element as the style
attribute hasn't been set yet. In IE, you'll need to check the Element's currentStyle
property, via something like this.
Here is a function you can use (without the use of a framework ie) that was posted here by InsDel:
function getStyle(className) {
var classes = document.styleSheets[0].rules || document.styleSheets[0].cssRules
for(var x=0;x<classes.length;x++) {
if(classes[x].selectorText==className) {
(classes[x].cssText) ? alert(classes[x].cssText) : alert(classes[x].style.cssText);
}
}
}
getStyle('.test')