diff --git a/src/standard/styling.html b/src/standard/styling.html
index 80bc2ed1..fc637c94 100644
--- a/src/standard/styling.html
+++ b/src/standard/styling.html
@@ -47,7 +47,9 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
var cssText = styleTransformer.elementStyles(this);
// do we really need to output shimmed styles
var needsStatic = this._needsStaticStyles(this._styles);
- cssText = needsStatic ? cssText : '';
+ // NOTE: IE has css style ordering issues unless there's at least a
+ // space in the stylesheet.
+ cssText = needsStatic ? cssText : ' ';
// under shady dom we always output a shimmed style (which may be
// empty) so that other dynamic stylesheets can always be placed
// after the element's main stylesheet.
diff --git a/src/standard/x-styling.html b/src/standard/x-styling.html
index b64d5a9c..6d16020e 100644
--- a/src/standard/x-styling.html
+++ b/src/standard/x-styling.html
@@ -32,7 +32,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
_needsStaticStyles: function(styles) {
var needsStatic;
for (var i=0, l=styles.length, css; i < l; i++) {
- css = styles[i].textContent;
+ css = styleUtil.parser._clean(styles[i].textContent);
needsStatic = needsStatic || Boolean(css);
if (css.match(propertyUtils.rx.MIXIN_MATCH) ||
css.match(propertyUtils.rx.VAR_MATCH)) {