web-dev-qa-db-ja.com

cssプロパティ値の!defaultはどういう意味ですか?

Twitter bootstrap=コードには、多くのCSSプロパティに!default 最後に。

例えば。

p {
  color: white !default;
}

!default 行う?

[〜#〜] update [〜#〜]

はっきりしないことが悪い。 BootstrapのSASS部分を使用しています。

67
Coffee Bite

Twitter Bootstrapは、私が見た限りではLESSを使用しています。一方、 !defaultは実際にはSassの一部です であり、Sassを提供するために使用されます変数($var)のデフォルト値。指定されたコンテキストでは無効になります、Sassでも。

その上、 LESSドキュメンテーション!defaultへの参照を見つけることができませんでした。私の知る限り、それはSass専用です。他の場所ではなく、Bootstrapのソースでこれを見つけましたか?正直なところ、BootstrapのスタイルシートでSass/SCSSコードを見たことを覚えていないからです。

価値があるものとして、CSSで!で始まる唯一の有効なトークンは!important既にご存知かもしれません です。

43
BoltClock

!defaultは、Bootstrap Sassでよく使用されます。逆!importantに似ています。すべてのブートストラップ変数は!defaultを使用して設定され、開発者はブートストラップをさらにカスタマイズできます。変数がまだ設定されていない場合にのみ定義します。

これにより、柔軟性が高まります。

//Example1 Dress color = red
$auroras-dress-color: blue;
$auroras-dress-color: red;

//Example2 Dress color = red
$auroras-dress-color: blue !default;
$auroras-dress-color: red;

//Example3 Dress color = blue
$auroras-dress-color: blue;
$auroras-dress-color: red !default;

なぜこれが重要なのでしょうか? Bootstrapはパッケージです。ほとんどの人は、Bootstrapソースを編集しません。BOOTSTRAP SOURCE。 bootstrap独自の変数ファイルを追加して、bootstrap=コードでコンパイルしますが、ネイティブのbootstrapパッケージには触れないでください。 Bootstrap sassのページには、ドキュメンテーションでカスタマイズしてコンパイルする方法に関する完全なスキニーがあります。

Lessがこれを行わない理由はわかりません。私は少ないものであまり仕事をしておらず、それが独自の変数管理に組み込まれているかどうかわかりません。

フィドルの例 https://jsfiddle.net/siggysid/344dnnwz/

62
Sarah M Giles