Skip to content

Instantly share code, notes, and snippets.

@Comandeer
Created May 13, 2015 08:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Comandeer/ba80698f4f5e81a4a777 to your computer and use it in GitHub Desktop.
Save Comandeer/ba80698f4f5e81a4a777 to your computer and use it in GitHub Desktop.
getStyle
var getStyle = function(elem)
{
var output = ''
,getSelector = function(elem)
{
var parent = elem.parentNode
,selector = '';
if(elem.id)
return '#' + elem.id
if(parent.id)
selector += '#' + parent.id + ' > ';
else if(parent.className)
selector += '.' + parent.className.replace(' ', '.') + ' > ';
else
selector += parent.tagName + ' > ';
if(elem.className)
selector += '.' + elem.className.replace(' ', '.');
else
selector += elem.tagName;
return selector;
}
,getCSS = function(elem)
{
var styles = getComputedStyle(elem)
,css = getSelector(elem) + '{\n';
for(var i = 0; i < styles.length; ++i)
{
css += styles[i] + ': ' + styles.getPropertyValue(styles[i]) + '\n';
};
output += css + '\n}'
}
,getChildren = function(elem)
{
[].forEach.call(elem.children, function(child)
{
getCSS(child);
if(child.children.length)
getChildren(child)
});
}
getCSS(elem);
getChildren(elem);
return output;
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment