RailsにSass用のBootstrapを導入する方法です。
インストールについての公式情報:https://github.com/twbs/bootstrap-sass
Step1. Gemのインストール
Gemfileを開き、sass-rails
とbootstrap-sass
を追加し、インストールします。
gem 'bootstrap-sass' gem 'sass-rails'
$ bundle install
Step2. Assetsの追加
RailsのアセットパイプラインにBottstrapを追加します。
app/assets/stylesheet/application.css
をapplication.scss
にリネームし、bootstrap-sprockets
とbootstrap
を追加します。bootstrap-sprockets
はbootstrap
よりも先にimport
する必要があります。
@import "bootstrap-sprockets"; @import "bootstrap";
app/assets/javascript/application.js
を開き、bootstrap-sprockets
を追加します。
//= require bootstrap-sprockets
以上で、生成されるHTMLにbootstrapのスタイルシートが追加されます。
Step3. Bootstrap変数の使用
Bootstrapにはいくつもの変数が定義されています。scss
内で既定の変数を使用する場合は次のようにbootstrap
を呼び出してから使います。
@import "bootstrap";
使用可能な変数一覧はLess
用ですがこちらにあります。Sass
で使う場合は@
を$
に置き換えて使います。
例えばカラーの @brand-success
を使う場合は次のように $brand-success
として使います。
h1 { color: $brand-success; }
bootstrapをimportしていないと、次のように怒られます。
Undefined variable: "$brand-success".
Step4. Viewportの設定
Viewportを設定したい場合はつぎのようにします。
app/views/layouts/application.html.erb
を開き、viewport
を追加します。
<meta name="viewport" content="width=device-width, initial-scale=1.0">
重要なポイント
Railsのアプリケーション名をbootstrap
にしていると、bootstrap-sass
gemを追加してrails
コマンドを実行すると次のようなname
エラーが発生します。
`<module:Bootstrap>': uninitialized constant Bootstrap::Rails::Application (NameError)