浏览代码

prevent removing selectors with pseudo elements or pseudo classes

Gildas 7 年之前
父节点
当前提交
ff5c2a1251
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      lib/single-file/css-minifier.js

+ 1 - 1
lib/single-file/css-minifier.js

@@ -58,7 +58,7 @@ this.cssMinifier = this.stylesMinifier || (() => {
 						unusedStyles.forEach(style => cssRule.style.removeProperty(style.name));
 					}
 					if (ruleInfo.matchedSelectors.size < ruleInfo.selectorsText.length) {
-						cssRule.selectorText = ruleInfo.selectorsText.filter(selector => ruleInfo.matchedSelectors.has(selector)).join(",");
+						cssRule.selectorText = ruleInfo.selectorsText.filter(selector => ruleInfo.matchedSelectors.has(selector) || (testFilterSelector(selector) && doc.querySelector(getFilteredSelector(selector)))).join(",");
 					}
 				} else {
 					if (!testFilterSelector(cssRule.selectorText) || !doc.querySelector(getFilteredSelector(cssRule.selectorText))) {