0

Visual Studio(Webワークベンチ)にSassプラグインを追加しました。.scssファイルを保存すると、cssファイルがすぐに生成されるので便利です。とにかく、私はIEの'filter:'を設定していて、Sassコンパイラーが余分なスペースを追加しています。

私の変数:

$blueColor: 5993D3; 
$lightColor: FFFFFF;

私のミックスイン:( 明るい色は白で、すべての呼び出しで同じであるため、変数として渡されません)

@mixin filterIE($startColor) {
    filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=1,StartColorStr='#FF#{$startColor}', EndColorStr='#00#{$lightColor}');
}

私のインクルード:

@include filterIE($blueColor);

問題が出力されます。余分なスペースが追加されます(StartColorStrの3に注意してください。何を試してもスペースが追加されます。ページに他にもいくつかあり、正常に動作します。

filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=1, StartColorStr='#FF5993D 3', EndColorStr='#00FFFFFF');

lightColorが正常に機能していることがわかります。場所がない。何かご意見は?

4

1 に答える 1

1

問題は、SASSが変数のデータ型を正しく理解していないことだと思い$blueColorます(#で始まらないため、16進数ではなく、最初の文字を文字で変更するとスペースが表示されません) 。

変数に引用符を追加して修正します

$blueColor: "5993D3";

ミックスインですでに補間#{}を使用しているため、出力には表示されません。

于 2012-11-18T19:52:53.907 に答える