10

コンパイル時にsass変数を設定することは可能ですか? 私は基本的にこれをしたい:


$color: red !default;
div#head {

  background-color: $color;

}

css にコンパイルするときに、$color を「青」に設定したい (できればコマンド ラインから)。誰もこれを行うことができましたか?

ありがとう、クリス

4

2 に答える 2

6

私は彼らのFAQhttp ://sass-lang.com/docs/yardoc/file.FAQ.htmlでこれを見つけました

を使用するなど、CSSがコンパイルされるたびにいくつかの変数をCSSに渡したい場合は、Sass関数--watchを使用してRubyスクリプトを定義し、データベースにクエリを実行することもできます。ただし、コードは1回だけコンパイルされ、静的に提供されます。

ただし、リクエストごとに異なるオプションを使用して再コンパイルする必要がある場合は、

Sass :: Engineを使用してコードをレンダリングし、:customオプションを使用してSass関数からアクセスできる データを渡すことができます。

ただし、お勧めできないようです。おそらくパフォーマンス上の理由からです。

于 2012-07-10T21:32:33.760 に答える
6

コマンド ライン オプションの代替手段は、変数に値を割り当てる他のファイルを作成することです。

上記のコードが「style.scss」という名前のファイルにあるとします。$color を「青」に設定するには、次のようなファイルを作成します。

$color: blue;
@import "style";

たとえば、「blue.scss」という名前を付けます。次に、以下でコンパイルします。

sass blue.scss:style.css

変数に別の値を割り当てたい場合は、次のように「green.scss」という名前の別のファイルを作成します。

$color: green;
@import "style";

次に、それをコンパイルします

sass green.scss:anotherstyle.css

少し面倒ですが、コンパイル時に変数の値を決定できるようにします。

于 2012-03-07T18:50:26.137 に答える