2011-11-15 73 views
3

我在尋找是否可以基於另一個變量的值引用變量的可靠答案。這在PHP中是可行的(等等)。Sass - 使用變量設置變量

例子(薩斯):

我想將邊框顏色設置爲$綠色(或藍色$,$黃色等),這是被包括從局部變量。我通過色彩名稱的列表循環喜歡這樣:

$colors = green, yellow, blue; 

@each $c in $colors { 
&.#{$c} { 
    border-color: $#{$c}; 
    } 
} 

上面的代碼(最好)的。綠色生成類,.yellow和的.blue,每一個邊框顏色設置爲$綠色,$黃色或$藍色。

(很明顯)上面的代碼不起作用,但是在Sass/Compass中有沒有另外一種方法實現這個功能?

回答

2

貌似這個線程的副本:using hash with scss(我一直在看/在偷偷啄現在幾個月)

利奧指出,你可以嘗試解決這一點 - 但PHP風格的變量變量不是該語言當前支持的東西。

2

更新:我與@ NEX3,薩斯

的主要開發人員

在谷歌集團(下文提到)討論檢查他居然說這種可變插值走的是抽象的錯誤的方式,而不是什麼薩斯打算做。當我問他,如果他仍然適用於討論,這被張貼相當一段時間回來,這裏就是他說的話:

是的,特別是因爲我們在薩斯3.3添加地圖,這將 可變插值支持大多數使用情況反正

好像薩斯3.3將通過一個功能叫做地圖 無法找到任何文件,現在對這樣的支持。如果任何人都可以找到它的鏈接,請分享


這種元編程的不薩斯 https://groups.google.com/forum/?fromgroups#!topic/sass-lang/upr78cyrW1I

目前支持