2017-04-27 63 views
0

我想獲得以下選擇器B__E.B__E--M,因此B__E--M僅適用於元素也具有B__E類的情況;使用scss(雙連字符)的建築

我有以下幾點:

.B { 
    &__E { 
     // default color 
     &--M { 
      // Color i want 
     } 
    } 
} 

的問題是,該--M修改應適用另一種顏色,但不覆蓋從__E元素的默認顏色。

這是不允許的:

.B { 
    &__E { 
     // default color 
    } 
} 

.B__E.B__E--M { 
    // color i want 
} 

如果沒有可能,這將是我的猜測:

.B { 
    &__E { 
     // default color 
     &.B__E--M { 
      // Color i want 
     } 
    } 
} 

回答

2

您正在尋找的雙符號選擇。

.B { 
    &__E { 
     color:black; 
     &#{&}--M{ 
      color:white; 
     } 
    } 
} 

/* // Outputs: 
    .B__E { 
    color: black; 
    } 
    .B__E.B__E--M { 
    color: white; 
    } 
*/ 
+0

沒錯!不知道一個;) – Mazz