【发布时间】:2017-07-26 11:23:17
【问题描述】:
基于组件的框架(如 Angular 2)限定与组件相关的 CSS。这意味着您的 component-css 不会干扰该组件之外的 dom 节点。
在这种情况下,由于选择器模糊导致的附带影响不再相关。我们是否仍应使用强制执行特定 CSS 选择器的规则,还是变得毫无意义?换一种说法,是否有任何正当理由继续使用特定的选择器?
我对性能的观点不是很感兴趣,而是对代码架构的观点感兴趣。
【问题讨论】:
-
究竟什么是“特定选择器”?
-
当它利用类和层次结构的组合来精确定位元素时,我将选择器定义为特定的。例如:
li {... }的特定版本将是.users > li.user {...}。第一个将匹配我的 DOM 节点,但也可能匹配它不是为它编写的其他节点。第二个将降低这种风险。 -
这取决于你的组件模板的大小,但对于常见的情况你不应该需要它。
标签: css angular css-selectors components