6 //var camelize = function(a,b){
7 // return b.toUpperCase();
10 var keys = ['fontFamily','fontSize','fontWeight','fontStyle','color',
11 'textTransform','textDecoration','letterSpacing','wordSpacing',
12 'lineHeight','textAlign','verticalAlign','direction','backgroundColor',
13 'backgroundImage','backgroundRepeat','backgroundposition',
14 'backgroundAttachment','opacity','width','height','top','right','bottom',
15 'left','marginTop','marginRight','marginBottom','marginLeft',
16 'paddingTop','paddingRight','paddingBottom','paddingLeft',
17 'borderTopWidth','borderRightWidth','borderBottomWidth',
18 'borderLeftWidth','borderTopColor','borderRightColor',
19 'borderBottomColor','borderLeftColor','borderTopStyle',
20 'borderRightStyle','borderBottomStyle','borderLeftStyle','position',
21 'display','visibility','zIndex','overflowX','overflowY','whiteSpace',
22 'clip','float','clear','cursor','listStyleImage','listStylePosition',
23 'listStyleType','markerOffset'
26 var fillStyle = function(dom)
28 if (!dom || dom.nodeType != 1) {
31 console.log(dom.nodeName);
33 var style = window.getComputedStyle(dom, null);
34 if (style.display == 'none') {
35 dom.parentElement.removeChild(dom);
39 if (dom.nodeName != 'BODY') {
40 pstyle = window.getComputedStyle(dom.parentNode, null);
43 var style = window.getComputedStyle(dom, null);
46 for(var i=0;i<keys.length;i++){
48 //var camel = prop.replace(/\-([a-z])/g, camelize);
49 var val = style.getPropertyValue(prop);
50 //returns[camel] = val;
52 // idea... if the parent has the same style.. then do not apply it to the child?
53 if (dom.nodeName != 'BODY' && dom.parentNode.style[prop] == val) {
57 dom.style[prop] = val;
59 for (var i = dom.childNodes.length -1; i--; i> -1) {
60 fillStyle(dom.childNodes[i]);
66 var el = document.querySelector('body');
69 //var matches = document.getElementsByTagName('style');
70 //for(var i =0;i < matches.length;i++) {
71 // matches[i].parentElement.removeChild(matches[i]);