diff --git a/packages/stylehacks/src/__tests__/starHtml.js b/packages/stylehacks/src/__tests__/starHtml.js index c0bc388f4..693ec9586 100644 --- a/packages/stylehacks/src/__tests__/starHtml.js +++ b/packages/stylehacks/src/__tests__/starHtml.js @@ -16,3 +16,30 @@ test( '', {target: 'ie6', unaffected: 'ie7'} ); + +test( + 'should not throw error', + processCSS, + '.class { color: red }', + '.class { color: red }', + {target: 'ie6', unaffected: 'ie7'}, + 0 +); + +test( + 'should not throw error #2', + processCSS, + '* { color: red }', + '* { color: red }', + {target: 'ie6', unaffected: 'ie7'}, + 0 +); + +test( + 'should not throw error #3', + processCSS, + '[hidden] { color: red }', + '[hidden] { color: red }', + {target: 'ie6', unaffected: 'ie7'}, + 0 +); diff --git a/packages/stylehacks/src/exists.js b/packages/stylehacks/src/exists.js index 468ef54d2..326d8f689 100644 --- a/packages/stylehacks/src/exists.js +++ b/packages/stylehacks/src/exists.js @@ -1,5 +1,5 @@ export default function exists (selector, index, value) { const node = selector.at(index); - return node && node.value.toLowerCase() === value; + return node && node.value && node.value.toLowerCase() === value; } diff --git a/packages/stylehacks/src/plugins/starHtml.js b/packages/stylehacks/src/plugins/starHtml.js index 0d26e5b58..92d8ac7ff 100755 --- a/packages/stylehacks/src/plugins/starHtml.js +++ b/packages/stylehacks/src/plugins/starHtml.js @@ -30,5 +30,6 @@ export default plugin([IE_5_5, IE_6], [RULE], function (rule) { if (isMixin(rule)) { return; } + parser(analyse(this, rule)).processSync(rule.selector); });