1

SCSS(または他の種類のコーディングrs)の非常に初心者のImは、sassをプレイしているだけで、問題が発生しました。

私はボックスシャドウへの複数のシャドウのミキシングを使用しようとしていました。これは、従来のcssで誰もが知っていることですが、次のようになります。

box-shadow: 0 1px 1px #333, 0 0 10px #222

次に、このミックスインをコーディングしました。

@mixin set_shadow($shadows){
  -moz-box-shadow:$shadows;
  -webkit-box-shadow:$shadows;
  box-shadow:$shadows;
}

結果はほとんど私が望んでいたものでした:

-moz-box-shadow: "0px 1px 1px black, 0px 0px 3px black";
-webkit-box-shadow: "0px 1px 1px black, 0px 0px 3px black";
box-shadow: "0px 1px 1px black, 0px 0px 3px black";

Buuut...悲しいことに..

引用符はコードの動作を許可しません

.scss(SASS)の文字列パラメーターを解析する方法、または結果のcssから引用符を削除する1つの方法を教えてください。

4

1 に答える 1

4

unquote()関数が探しているもののよう です:

@mixin set_shadow($shadows){
  -moz-box-shadow: unquote($shadows);
  -webkit-box-shadow: unquote($shadows);
  box-shadow: unquote($shadows);
}

h1 {
  @include set_shadow("0 1px 1px #333, 0 0 10px #222");
}

または、可変引数を使用できます。そして、シャドウの引用符なしのリストを渡します。

@mixin set_shadow($shadows...){
  -moz-box-shadow: $shadows;
  -webkit-box-shadow: $shadows;
  box-shadow: $shadows;
}

h1 {
  @include set_shadow(0 1px 1px #333, 0 0 10px #222);
}
于 2012-11-04T19:18:48.530 に答える