2012-06-16 53 views
1

所以,這是一個會被編譯成這樣的 「LESS」 代碼SCSS加入類

.my_class{ 
    color: #000; 
    font: 12px/12px Arial; 
    &_comething_else{ color: #f00; } 
} 

的例子:

.my_class{ 
    color: #000; 
    font: 12px/12px Arial; 
} 


.my_class_something_else{ 
    color: #f00; 
} 

類 「.my_class」 和 「_something_else」 被加入了, 但SCSS這個代碼將被編譯成這樣:

.my_class{ 
    color: #000; 
    font: 12px/12px Arial; 
} 


.my_class _something_else{ 
    color: #f00; 
} 

哪裏是空白「.my_class」前後理解過程「_something_else」中的rscore

那麼,有什麼辦法可以在SCSS中做到這一點嗎? 謝謝。

+0

我認爲SCSS總是假定當父選擇()由比別的東西加入了一個空間' #'十六進制或'.'點。可能幫助人們編寫有意義的代碼,但他們顯然忽略了這種用例... – sg3s

+0

將其作爲答案發布,並將其作爲一個接受方案,因爲我不認爲有這樣做的「好」方法。 – sg3s

+0

是的。我不得不等待,沒有足夠的評級。 –

回答

2

我找到了解決方案。它比更醜陋的少,但工作原理:

$ns: ".my_class"; 
.my_class{ 
    color: #000; 
    font: 12px/12px Arial; 
    #{$ns}_comething_else{ color: #f00; } 
} 

會被編譯成

.my_class{ 
    color: #000; 
    font: 12px/12px Arial; 
} 

.my_class .my_class_comething_else{ 
    color: #f00; 
} 
0

即使它仍然不可能在SASS加入類名(3.2.6),我注意到,你可以做它在jsFiddle結束。

這裏是我使用的代碼:

.elem { 
    &__child { 
     border: solid red; 

     &-text { 
      color: blue; 
     } 
    } 
} 

時退房examle http://jsfiddle.net/nicolasmn/6cvFZ/