0

SCSS インクルード ファイルの 1 つに次のようなものがあります。

$inputBorderRadius: 0 !default;

.input {
  @include border-radius($inputBorderRadius);
}

これは正常に機能します。上記のコードを含める前にオーバーライドでき$inputBorderRadius、すべてが期待どおりに動作します。

私が疑問に思っているのはborder-radius、(たとえば) $inputBorderRadiusnull の場合にルールをまったく生成しないように SASS に指示する方法があるかどうかです。border-radius: 0私の場合、デフォルトを指定するような余分なルールを生成したくないだけです。

私は@ifディレクティブを認識していますが、ドキュメントには次のように記載されています。

コントロール ディレクティブは高度な機能であり、日常のスタイリングにはお勧めできません。

私はこれについてすべて間違って考えていますか?私はSASSにかなり慣れていないので、これがあまり目立たない質問ではないことを願っています.

4

1 に答える 1

3

nullの代わりに値を使用したいだけです0。Null は Sass 3.2 で利用できるようになり、唯一の値である場合はプロパティを出力しません。

その警告をもっと軽視することもできます。通常の使用では制御ディレクティブに夢中になりたくありませんが、必要なときに何も害を及ぼすことはありません。より単純なケースにも役立つif($test, $true, $false)機能があります。

于 2012-09-14T22:43:37.373 に答える