2
我剛剛寫了一個mixin應該顯示視頻顯示的@ 2x圖標版本。Sass mixin顏色名稱編譯問題
首先,這裏是一個圖標名稱的例子:
images/icon/close-black.png
images/icon/[email protected]
這裏是混入:
@mixin background-image-retina($type, $file, $color, $ext) {
background-image: url('src/assets/images/' + $type + '/' + $file + '-' + $color + '.' + $ext);
@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (-moz-min-device-pixel-ratio: 2),
only screen and (-o-min-device-pixel-ratio: 2/1),
only screen and (min-device-pixel-ratio: 2),
only screen and (min-resolution: 192dpi),
only screen and (min-resolution: 2dppx){
& {
background-image: url('src/assets/images/' + $type + '/' + $file + '-' + $color + '@2x.' + $type);
}
}
}
所以我打電話給我的mixin:
@include background-image-retina(icon, close, black, png);
而這裏結果,這裏是問題:
background-image: url(src/assets/images/icon/close-#000.png);
我的問題:
有誰知道如何在沒有實際十六進制顏色編譯它指定圖標的顏色?
感謝您的幫助!
/W
[編輯:發現的解決方案]
爲了避免色樣的名稱在編譯你的mixin,只需添加它周圍的引號。
black -> #000
"black" -> black
好的,我想我剛剛找到了解決方案。這麼簡單... 爲了避免在mixin中編寫類似顏色的名稱,只需在它周圍添加引號**。我將編輯我的問題給需要答案的人。 –