ネストされた @extend は許可されていません。回避策としてこれを試してください
.foo {
background-color: lime;
}
.b{
margin:0px;
}
.baz {
@extend .foo;
@extend .b;
}
私が個人的に使用するために構築したものを以下で皆さんと共有します. これはセレクターを動的に構築します. 命名規則では特殊文字が許可されていないため, クラスを区切るために「--」を使用しました.
$ih-classes: ( "module--cardContainer--header",
"a"
);
%module--cardContainer--header {
color: #1e1d1c;
background-color: #fff;
border-bottom: 0.0714rem solid #e0dddc;
padding: 0;
line-height: 3.1429rem;
font-size: 1.2857rem;
font-family: ProximaNovaSemiBold;
}
%a{
color:red;
}
@function str-replace($string, $search, $replace: '') {
$index: str-index($string, $search);
@if $index {
@return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace);
}
@return $string;
}
@mixin generate-framework-code() {
@each $icon in $ih-classes {
$val : str-replace($icon, '--', ' .');
.#{$val} {
@extend %#{$icon};
}
}
}
@include generate-framework-code();
幸運を!!