我可以使用基类'类'来覆盖子元素吗?
问题描述:
使用SCSS,我想样式为.some-base
类型的所有h3
元素,但似乎我需要在派生样式中定义覆盖。所以我可以使用基类'类'来覆盖子元素吗?
不起作用:
.some-base {
h3 {
margin-right: 3px;
}
}
.some-derived {
@extend .some-base;
}
是否工作:
.some-base {
}
.some-derived {
@extend .some-base;
h3 {
margin-right: 3px;
}
}
任何方式来获得的第一个方法来工作,所以我并不需要在每个覆盖重新定义呢?
答
.some-base
没有适用于自己的任何样式。如果您在示例1中将color: red
放在.some-base
上,则会看到它由.some-derived
继承(注意:它需要进入.some-base
而不是.some-base h3
)。
如果它定义为一个嵌套类这是不可能的,虽然延嵌套类,所以你不能延长.some-base
和快进去吧(在这一个100%确定)中定义的h3
样式,也可以延长.some-base h3
。如果您将.some-base h3 {}
定义为自己的规则而不是.some-base { h3 {} }
,则可以对其进行扩展(95%确定)。
它看起来不像我可以延伸从你的后一个建议 - 所以我想我只需要手动应用这种特殊的风格重写! – Rollie 2014-09-23 22:24:54