force-attribute-nesting规则疑问:修改后sasslint仍告警?
Fixing "force-attribute-nesting" Lint Error for Multiple Attribute Selectors
我刚帮你捋清楚这个问题啦——你对force-attribute-nesting规则的理解有点小偏差哦!
这个规则的核心要求是:每个单独的属性选择器都必须嵌套在它的直接父选择器中,而不是把多个属性选择器打包放在同一个嵌套块里。你之前的修改是把[title][href]一起嵌套在a下面,但规则不认这种写法,它希望每个属性选择器都层层递进嵌套。
正确的写法应该是这样的:
a { &[title] { &[href] { font-weight: bold; } } }
这样写之后,[title]嵌套在父选择器a里,[href]又嵌套在父选择器a[title]里,完全符合规则对“属性选择器必须嵌套在父选择器中”的要求,sass-lint就不会再弹出告警啦。
如果觉得这种多层嵌套有点繁琐,你也可以考虑在sass-lint的配置文件里调整这个规则的严格程度,但按照官方规则的设计意图,这种多属性选择器的场景就是需要逐次嵌套来满足校验的。
内容的提问来源于stack exchange,提问作者aristotll
相关产品推荐
相关产品推荐

