Bazı birimlerde, SASS'deki iç içe geçmiş karışımları veya işlevleri nasıl kullanabilirim? Böyle bir şey var:İç içe karıştırılmış karışımlar veya işlevler SASS
@mixin A(){
do something....
}
@mixin B($argu){
@include A();
}
Bazı birimlerde, SASS'deki iç içe geçmiş karışımları veya işlevleri nasıl kullanabilirim? Böyle bir şey var:İç içe karıştırılmış karışımlar veya işlevler SASS
@mixin A(){
do something....
}
@mixin B($argu){
@include A();
}
evet zaten Doğru yapıyor. İlk mixin ikincisini arayabilirsiniz. Bu kalemi kontrol http://codepen.io/crazyrohila/pen/mvqHo
Sen çok yuva Katmalar, ayrıca .. Mixins içeride yer tutucuları kullanabilirsiniz diğer cevaplar belirtildiği gibi CSS
div {
color: red;
padding: white;
font-size: 10px;
padding: 5;
}
Karışımın sırasının önemli olduğu, yani yukarıdaki kodun altındaki bir {...} 'yi bir {...} 'i taşırsanız sass derleme hatası yaratır' Tanımlanmamış karışma' a'' – dkjain
verir
@mixin a {
color: red;
}
@mixin b {
@include a();
padding: white;
font-size: 10px;
}
@mixin c{
@include b;
padding:5;
}
div {
@include c();
}
, sen diğer karışımlardaki karışımları içerebilir. Ayrıca, mikslerinizi de kapsayabilir.
Örnek
.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;
}
}
}
}
Will çıkışı:
.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;
}
Scoping Katmalar Eğer ortaya çıkan çakışma olmadan farklı kapsamları aynı adlı birden katmalar olabileceği anlamına gelir.
evet doğru yapıyorsunuz. İlk mixin ikincisini arayabilirsiniz. [bu kalemi kontrol et] (http://codepen.io/crazyrohila/pen/vuljA). – crazyrohila
oh, teşekkürler! Bununla çalıştım ama çalışmıyor, belki de benim rubyum çöküyor. Yeniden yüklemeyi deneyeceğim. Teşekkür ederim. (codepen amazing !, henüz bilinmemektedir) – iLevi
evet öyle. :) – crazyrohila