使用SCSS,我想设置h3
类型的所有.some-base
元素的样式,但似乎我需要在派生样式中定义覆盖。所以
不能工作:
.some-base {
h3 {
margin-right: 3px;
}
}
.some-derived {
@extend .some-base;
}
工作:
.some-base {
}
.some-derived {
@extend .some-base;
h3 {
margin-right: 3px;
}
}
任何方式让第一种方法起作用,所以我不需要在每次覆盖中重新定义它?
答案 0 :(得分:0)
.some-base
没有应用任何样式。如果您在示例1中将color: red
放在.some-base
上,您会看到它由.some-derived
继承(注意:它需要进入.some-base
,而不是.some-base h3
)。
虽然扩展嵌套类是不可能的,所以你不能扩展.some-base
并在其中定义h3
样式(100%确定这个样式),也不能扩展.some-base h3
1}} 如果它被定义为嵌套类。如果您将.some-base h3 {}
定义为自己的规则而不是.some-base { h3 {} }
,那么您可以将其扩展(95%确定在此规则上)。