0
我最近決定我想要在編譯SASS時發現一些默認操作,並發現這個堆棧溢出問題幫助我編寫了一個函數做到這一點(Use variable defined in config.rb in scss files)SASS :: Script ::顏色不被解釋爲某些SASS函數的顏色
顏色值得到通過罰款,並被視爲像一個SASS顏色對象(即如果我通過'#ff0000'到函數它出來的'紅'是好的)但它在tint()和shade()函數中不起作用。
我得到的錯誤是
(137行:「#ff1122」不是「燈罩」顏色)
但是,如果我註釋掉所有色彩的實例( )和陰影(),那麼它完美的作品。
這裏是一個的正在使用的所有代碼:
config.rb
sass_options = {:custom => { :custom_colors => {"main" => "#ff1122"} } }
module Sass::Script::Functions
def custom_color(value)
rgb = options[:custom][:custom_colors][value.to_s].scan(/^#?(..?)(..?)(..?)$/).first.map {|a| a.ljust(2, a).to_i(16)}
Sass::Script::Color.new(rgb)
end
end
style.scss(第5行)
$col_primary : #{custom_color(main)};
(來自之前那裏提到的堆棧溢出鏈路採取)
style.scss(錯誤中提到的第137行)
@include background-with-css2-fallback(linear-gradient(-45deg, transparent 51%, shade($col_primary, 10) 50%, $col_primary 75%, $col_primary 0%));
我看不到這樣做的原因,因爲它在其他地方用作顏色。
如果需要
如果沒有真正的解決方案,您可以使用混合而不是色調/陰影,因爲所有這些功能實際上都是將指定的顏色與白色/黑色混合。 – cimmanon
使用mix時我得到同樣的錯誤 - 我想這很有意義,因爲它可能只是在內部使用該函數 – ollie