現時点では、プロジェクトでTwitter Bootstrapを使用しています。これには、LESSファイルを含め、記述した追加のLESSコードを使用してコンパイルしています。
最新リリースでは、Bootstrap LESS変数の一部をオーバーライドする必要があります。ここでの1つのオプションは、Bootstrapリリース。
しかし、私は、_@import
_ LESSファイルで定義された変数を、変数の後に再宣言することによってオーバーライドすることが可能であることに注意します。
例えば。:
_@import "Twitter-bootstrap/bootstrap.less";
// Restore base font size to pre 2.1.1 defaults
@baseFontSize: 13px;
// Add some custom LESS code here
_
これは悪い習慣ですか?それはLESSコンパイラーが機能する方法のアーチファクトですか、それとも意図された部分ですか?次の2つのリファレンスは見つかりましたが、これに関する情報はあまり見つかりませんでした。
Lessコンパイラーのバグのため、変数が最初に宣言された後で変数を変更することにより、変数の「定数」値をオーバーライドできます。
http://rubysource.com/how-to-customize-Twitter-bootstrap%E2%80%99s-design-in-a-Rails-app
そして
これらの3つの変数をオーバーライドして、列とガターをカスタマイズします(grid.lessインポートが宣言された後)。
LESSサイト自体は、変数は「定数」であると述べています。
LESSの変数は実際には「定数」であり、一度しか定義できないことに注意してください。
しかし、このアプローチを使用している他のサイトが表示されます。ベンダーブランチを維持するよりも確かに簡単で、less.jsでも問題なく動作するようです。
これが悪いことかどうかについての考えをいただければ幸いです!
OK!上記の問題の1つが意図された動作の説明につながり、LESS変数のオーバーライドが適切であることが判明しました。
あなたの宣言はCSSの同じスコープでお互いを上書きします。同じことがLESSにも当てはまります。
CSSと同様に、スコープ内でのオーバーライドは、LESSを使用するための意図された方法です。
大丈夫です!
私は通常、「コンポーネント」とデフォルト値を持つ変数を含む少ないファイルを作成します。次に、同じ変数を使用して「顧客」の値を含むファイルをインポートし、デフォルトの値を上書きします。このようにして、一部の値を変更するだけで、顧客ごとに新しいデザインを作成できます。
大丈夫でとても便利です。