2012-05-03 7 views
3

私はフロントエンドのメインスタイルとしてTwitter Bootstrapを使用したいと思っているJ2EEプロジェクトに取り組んでいます。Twitter Bootstrapをプロダクション、LESS、または圧縮CSSで使用するには?

Twitter Bootstrapで導入されたLESSまたはCSSフォーマットを使用する必要があるかどうかわかりません。これらのファイルをサーバーサイドまたはクライアントサイドでコンパイルする必要があります。スタイルシートをプロダクトモードでキャッシュします。それ以外の場合はキャッシュする必要はありません。

クライアントサイトのプリコンパイルが製品のパフォーマンスに影響を与えるのではないかと思いますが、誰もそれをベンチマークとしましたか?

答えて

0

サーバーサイドコンパイラを扱うのが面倒でない場合は、CSSと一緒に行くといいでしょう。

あなたは、これはJavaのために良い以下のコンパイラでそのルートを行くの場合:
http://www.asual.com/lesscss/

それはあなたが仕事をしなければならないすべてでない限り、クライアント側をコンパイルすることはありません、それはブラウザ対に大きな影響を取りますgzip圧縮された/圧縮されたCSS。

:)

+0

使用はCSSを圧縮した場合、我々はTBによって定義されたスタイルシートをカスタマイズするLESSメカニズムを使用することはできません。 サーバー側のプリコンパイルとして、どのプロジェクトでもhttp://www.asual.com/lesscss/を使用していることをご存知ですか? –

+0

私の頭の上から外れるわけではありませんが、ここにサードパーティのユーザーによって記載されているコマンドラインオプションがあります:http://www.dopefly.com/techblog/entry.cfm?entry=358 – Nijikokun

+0

* "大きな影響" *?マグニチュードのオーダーで「巨大」であるか、または半スマートなクライアントサイドキャッシュがありますか? –

0

LESSは、開発のための素晴らしいですが、唯一の生産用にコンパイルされた.cssを使用しています。あなたが何をしても、絶対にless.js/LESSを持ってはいけません。開発中にless.jsやHTMLファイルの先頭に無制限のファイルを使用して応答時間が短くても、他の人の応答時間は全面的になります。 LESSファイルをインポート/追加できる方法が無限に多いため、誰かがそれに対して良いベンチマークを作成できるかどうかはわかりません。 130のミックスインを別々の.lessファイルにインポートしてクライアント側でコンパイルすると、結果のサイズが同じであっても、1つの.lessファイルとは異なるパフォーマンスを持つことになります。ファイルサイズ、コンピュータハードウェアの仕様などを考慮すると、ベンチマークで信頼できる結果を得るのは難しいでしょう。

私がお勧めするのは、node.jsとless.jsのようなものを使用して、保存するたびにオンザフライでコンパイルすることです。または、プロジェクトを見て、保存するたびにコンパイルする素敵なguiツールのうちの1つを使用してください。 (LESS.app、Crunch App、WinLESSなど)

+0

私は最後の文章を誤解していると付け加えなければなりません。私はその質問が「コンパイル側」に関係していると思っていました。 – jonschlinkert

+0

はい、私はクライアント側のコンパイルを意味しました。しかし、bootstrap.cssをダウンロードした後に私たちの製品に合うようにTwitterのブートストラップをカスタマイズするには、LESSメカニズムの代わりにCSSの上書きを使うべきですか? –

+0

これは、将来の拡張で簡単にマージすることにどれほど気を配っているか、カスタマイズの程度などによって決まります。一般的に、LESSを使用するのが快適ならば、ネイティブのLESSファイルを編集し続け、 - 保存するたびに自動的にコンパイルされます。 – jonschlinkert

2

これは、lessのcssへのサーバー側変換のランタイムまたはビルドタイムソリューションとして使用でき、キャッシングも処理できます。あなたはここにwro4jにはあまりサポートの詳細を読むことができます:

+0

wro4jは確かに興味深いツールですが、問題は主にクライアント側のless.jsのベンチマークでした。その結果はありますか? –

+0

ベンチマーク結果はありませんが(あとでやることもありますが)、各リクエストでCSSをコンパイルするのがコンパイル済みでキャッシュされたコンテンツの提供と比較した場合のパフォーマンスに影響します。 –