Css SASS中的嵌套mixin或函数
有些人知道如何在SASS中使用嵌套的mixin或函数? 我有这样的想法:Css SASS中的嵌套mixin或函数,css,nested,sass,mixins,Css,Nested,Sass,Mixins,有些人知道如何在SASS中使用嵌套的mixin或函数? 我有这样的想法: @mixin A(){ do something.... } @mixin B($argu){ @include A(); } 是的,你已经做对了。您可以在第二个mixin中调用第一个mixin。选中此笔您可以使用多套混音器,也可以在混音器中使用占位符 @mixin a { color: red; } @mixin b { @include a(); padding: white; fo
@mixin A(){
do something....
}
@mixin B($argu){
@include A();
}
是的,你已经做对了。您可以在第二个mixin中调用第一个mixin。选中此笔您可以使用多套混音器,也可以在混音器中使用占位符
@mixin a {
color: red;
}
@mixin b {
@include a();
padding: white;
font-size: 10px;
}
@mixin c{
@include b;
padding:5;
}
div {
@include c();
}
它给出了CSS
div {
color: red;
padding: white;
font-size: 10px;
padding: 5;
}
如其他答案中所述,您可以在其他混合中包含混合。此外,您还可以确定mixin的范围 示例
.menu {
user-select: none;
.theme-dark & {
color: #fff;
background-color: #333;
// Scoped mixin
// Can only be seen in current block and descendants,
// i.e., referencing it from outside current block
// will result in an error.
@mixin __item() {
height: 48px;
}
&__item {
@include __item();
&_type_inverted {
@include __item();
color: #333;
background-color: #fff;
}
}
}
}
将输出:
.menu {
user-select: none;
}
.theme-dark .menu {
color: #fff;
background-color: #333;
}
.theme-dark .menu__item {
height: 48px;
}
.theme-dark .menu__item_type_inverted {
height: 48px;
color: #333;
background-color: #fff;
}
作用域mixin意味着您可以在不同的作用域中拥有多个名称相同的mixin,而不会产生冲突。是的,您做得对。您可以在第二个mixin中调用第一个mixin。哦,谢谢你!我试过了,但没用,也许我的红宝石坏了。我将尝试重新安装。非常感谢。(codepen太棒了!还不知道)@crazyrohila你应该把这个作为答案发布。很抱歉,我错误地删除了最后一支笔。因此创建了一支新笔。这里不清楚为什么运行此代码没有回答您的问题。必须注意的是,mixin的顺序很重要,即如果在上述代码的底部移动
@mixin a{…}
,sass会生成编译错误未定义的mixin'a'
任何原因b
不是b()
in@include b代码>?@ajax333221 mixin不必有参数,如果不指定参数,则()是可选的。