|
106 | 106 | var cssText = '';
|
107 | 107 | // if element is a template, get content from its .content
|
108 | 108 | var content = element.content || element;
|
109 |
| - var sourceDoc = element.ownerDocument; |
110 | 109 | var e$ = Array.prototype.slice.call(
|
111 | 110 | content.querySelectorAll(this.MODULE_STYLES_SELECTOR));
|
112 |
| - for (var i=0, e, resolveDoc, addModule; i < e$.length; i++) { |
| 111 | + for (var i=0, e; i < e$.length; i++) { |
113 | 112 | e = e$[i];
|
114 |
| - resolveDoc = sourceDoc; |
115 |
| - addModule = null; |
116 | 113 | // look inside templates for elements
|
117 | 114 | if (e.localName === 'template') {
|
118 | 115 | cssText += this._cssFromElement(e);
|
119 | 116 | } else {
|
120 | 117 | // style elements inside dom-modules will apply to the main document
|
121 | 118 | // we don't want this, so we remove them here.
|
122 | 119 | if (e.localName === 'style') {
|
123 |
| - addModule = e.getAttribute(this.INCLUDE_ATTR); |
| 120 | + var include = e.getAttribute(this.INCLUDE_ATTR); |
124 | 121 | // get style element applied to main doc via HTMLImports polyfill
|
125 | 122 | e = e.__appliedElement || e;
|
126 | 123 | e.parentNode.removeChild(e);
|
| 124 | + cssText += this.resolveCss(e.textContent, element.ownerDocument); |
| 125 | + // now support module refs on 'styling' elements |
| 126 | + if (include) { |
| 127 | + cssText += this.cssFromModules(include); |
| 128 | + } |
127 | 129 | // it's an import, assume this is a text file of css content.
|
128 |
| - } else { |
129 |
| - // TODO(sorvell): plan is to deprecate this way to get styles; |
130 |
| - // remember to add deprecation warning when this is done. |
131 |
| - e = e.import && e.import.body; |
132 |
| - resolveDoc = e.ownerDocument; |
| 130 | + // TODO(sorvell): plan is to deprecate this way to get styles; |
| 131 | + // remember to add deprecation warning when this is done. |
| 132 | + } else if (e.import && e.import.body) { |
| 133 | + cssText += this.resolveCss(e.import.body.textContent, e.import); |
133 | 134 | }
|
134 |
| - // adjust paths in css. |
135 |
| - if (e) { |
136 |
| - cssText += this.resolveCss(e.textContent, resolveDoc); |
137 |
| - } |
138 |
| - } |
139 |
| - // now support module refs on 'styling' elements |
140 |
| - if (addModule) { |
141 |
| - cssText += this.cssFromModules(addModule); |
142 | 135 | }
|
143 | 136 | }
|
144 | 137 | return cssText;
|
|
0 commit comments