是否可以使用SCS(或SASS)将同一类添加到多个元素中,但每个元素的样式不同?
这就是我想要的:是否可以使用SCS(或SASS)将同一类添加到多个元素中,但每个元素的样式不同?,sass,Sass,这就是我想要的: select .ia-loading { border: 2px solid blue; } input .ia-loading { border: 2px solid orange; } 类似这样的代码(此代码不起作用,它会引发错误): .ia-loading { select.& { border: 2px solid blue; } input.& { border: 2px solid orange; } } sele
select .ia-loading { border: 2px solid blue; }
input .ia-loading { border: 2px solid orange; }
类似这样的代码(此代码不起作用,它会引发错误):
.ia-loading {
select.& {
border: 2px solid blue;
}
input.& {
border: 2px solid orange;
}
}
select.ia-loading { border: 2px solid blue; }
input.ia-loading { border: 2px solid orange; }
获取此信息:
.ia-loading {
select.& {
border: 2px solid blue;
}
input.& {
border: 2px solid orange;
}
}
select.ia-loading { border: 2px solid blue; }
input.ia-loading { border: 2px solid orange; }
我尝试过几种组合,但没有一种有效:
这个:
生成此css,这不是我想要的:
select .ia-loading { border: 2px solid blue; }
input .ia-loading { border: 2px solid orange; }
这个:
抛出此错误:
"&" may only be used at the beginning of a compound selector.
非常感谢。您在输入和选择后面使用“&”的原因是什么? 它只在你想有一个特定的“动作”时使用,比如悬停、活动等等 范例
.ia-loading
&:hover
color: #FFF
在Sass中,也不能使用括号,这是在scss中使用的
我也不认为你可以按照你想要的方式来做。应该这样做:
.ia-loading
border: 2px solid
select
.ia-loading
border-color: blue
input
.ia-loading
border-color: orange
你可以这样做:
@mixin test($elem) {
#{$elem}.test {
@content;
}
}
如果你真的想在你的类中使用它,你可以使用自Sass 3.3以来的@at root
指令(否则你就把它放在你的主类之外)
你有什么问题?此代码不正确?是@Parhum,它是,console显示此错误:
error styles.scss(_forms.scss的第11行:“select.”后的CSS无效:预期的类名为“&{”)
。抱歉@Sharpless512,我从未使用过SASS旧语法,所以SASS对我来说代表SCSS。我编辑了问题,明确提到了SCSS。关于您的其余答案,“这不可能”对我来说是正确的答案。您确定这不可能吗?非常感谢。如果您使用SASS代码,它会理解有一个div加载类.ia时,他们有一个子选择或输入。这不是您想要的。类应该“附加”到输入和选择,而不是其他方式。因此,不,出于您的目的,这是不可能的。了解sass和scss的一个好工具是: