diff --git a/src/rules/overqualified-elements.js b/src/rules/overqualified-elements.js index 13e21274..3000fb9d 100644 --- a/src/rules/overqualified-elements.js +++ b/src/rules/overqualified-elements.js @@ -33,7 +33,7 @@ CSSLint.addRule({ modifier = part.modifiers[k]; if (part.elementName && modifier.type === "id"){ reporter.report("Element (" + part + ") is overqualified, just use " + modifier + " without element name.", part.line, part.col, rule); - } else if (modifier.type === "class"){ + } else if (modifier.type === "class" && modifier.text.indexOf(".ng-") === -1) { if (!classes[modifier]){ classes[modifier] = []; diff --git a/tests/rules/overqualified-elements.js b/tests/rules/overqualified-elements.js index 368fcaee..27073147 100644 --- a/tests/rules/overqualified-elements.js +++ b/tests/rules/overqualified-elements.js @@ -18,6 +18,11 @@ Assert.areEqual(0, result.messages.length); }, + "Using a dynamic class with an element should not result in a warning": function(){ + var result = CSSLint.verify("a.ng-hide { float: left;}", { "overqualified-elements": 1 }); + Assert.areEqual(0, result.messages.length); + }, + "Using a class with an element should result in one warning": function(){ var result = CSSLint.verify("li.foo { float: left;}", { "overqualified-elements": 1 }); Assert.areEqual(1, result.messages.length);