41

私は現在、プロジェクトで 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 インポートが宣言された後)。

http://semantic.gs/

LESS サイト自体は、変数は「定数」であると述べています。

http://lesscss.org/

LESS の変数は、一度しか定義できないという点で、実際には「定数」であることに注意してください。

しかし、その後、このアプローチを使用している他のサイトを目にします。ベンダー ブランチを維持するよりも確かに簡単で、less.js で問題なく動作するようです。

これが悪いことかどうかについての考えをいただければ幸いです。

4

2 に答える 2