2011-10-06 10 views
8

新しいRails 3.1アプリを作成しました。私はapp/assets/stylesheets/bootstrap.min.cssにtwitterのブートストラップCSSファイルを追加しました。ここに関連するコードTwitterのブートストラップに、プリコンパイル時にRails 3.1のアセットパイプラインによるCSSが無効ですか?

APP /資産/スタイルシート/ application.css(ブートストラップが含まれているので、ツリーを含む)

/* 
* This is a manifest file that'll automatically include all the stylesheets available in this directory 
* and any sub-directories. You're free to add application-wide styles to this file and they'll appear at 
* the top of the compiled file, but it's generally better to create a new file per style scope. 
*= require_self 
*= require_tree . 
*/ 

はGemfile(コンパイル/圧縮するためexecjsとtherubyracerを含む)である

group :development, :qa do 
    gem 'execjs' 
    gem 'therubyracer' 
end 
# Gems used only for assets and not required 
# in production environments by default. 
group :assets do 
    gem 'sass-rails', '~> 3.1.0' 
    gem 'coffee-rails', '~> 3.1.0' 
    gem 'uglifier', '>= 1.0.3' 
end 

その後、私は資産

rake assets:precompile 

このFをプリコンパイルするrakeタスクを実行しますCSSは、ブートストラップファイルにある次のエラー

Invalid CSS after ".inputs-list li+": expected number or function, was "li" 

と不振の解決策(「.inputsリストのLi +のLiが」セレクタです)。私は

rake assets:precompile RAILS_ENV=development 

を実行する場合

しかし、今では正常に動作します。ファイルを圧縮しないようにconfig/environments/production.rbを変更すると、元のコマンドも(開発環境を指定せずに)動作することがわかります。

どうすればエラーを追跡できますか?私は今のところ圧縮を止めて暮らすことができますが、明らかに何かが間違っています。それはレールですか?スプロケット?ルビーレーサー?泡立て器?

答えて

4

これは、非拡張版のブートストラップを使用してこれを修正しました。それはまだrake assets:precompileを実行するときにコンパイルされますので、問題はありません:)

+0

私は私が同様に非縮小さバージョンを試してみましたと思った - そしてそれはまだ働いていませんでした。私は本当にこのことを忘れてしまった場合に備えて、あなたの答えを受け入れるでしょう。いずれにしても、今日もレール3.1.1アプリで試してみましたが、うまくいきました。ミニバージョンと非ミニバージョンの両方で – davekaro

+0

Rails 3.1.1でうまく動作していることを知っておいてください:) – Ian

6

ブートストラップをsassに変換し、アセットパイプラインに組み込むライブラリの使用をお勧めします。こうすることで、JSを組み込むことができます。preboot.scssファイルでブートストラップが使用する変数を変更し、組み込む機能を選択して選択することができます。また、bundlerを使ってアップグレードすることもできます。

私は、ブートストラップ-SASSを使用して、それは素晴らしい作品:https://github.com/thomas-mcdonald/bootstrap-sass

+0

私はこれを考慮しました...しかし、それは私が当時望まなかった複雑さを増やしています。私はちょうどCSSファイルをドロップしてやりたいと思っていました。 – davekaro

+1

私はこの方法を承認します。 – nobody

関連する問題