3

Rails プロジェクトを開始し、bootstrap-sass を実装しました。しばらくして、別のバージョンの twitter ブートストラップを使用しているテーマ/テンプレートを見つけました。テンプレートをアプリに追加しましたが、ビューが意図したとおりに完全に整列しません。次に、テーマ/テンプレートに付属する特定のアセット (jquery バージョン、別の古いブートストラップ バージョンなど) をプロジェクトに追加しましたが、結果はほぼ完璧です。ただし、まだいくつかのアライメントの問題があります。CSS を調べると、ブートストラップの 2 つのバージョン間の競合が原因で発生していることがわかります。

このテンプレートが付属のバージョンの twitter ブートストラップのみを使用するようにする必要があると考えています。もしそうなら、どうすればいいですか?Railsビューが特定のcssスタイルシートのみを使用し、他のスタイルシートを読み取らないようにするにはどうすればよいですか?

(これが最善の解決策ではない場合、考慮すべき代替手段は何ですか?)

ありがとう

4

2 に答える 2

5

これを試してください:

1) 2 つのレイアウト (application.html.erb と new_application.html.erb) を使用する 2) 2 つのマスター javascript/css ファイル (application.js と new_application.js、application.css と new_application.css) を使用する 3) アプリケーション内に。 html.erb には最初の application.js と application.css が含まれ、2 番目のレイアウトでは新しいアプリケーション js と css がインポートされます。 .

class NewBootstrapController < ActionController::Base
  layout 'new_application'
end

class OldBootstrapController < ActionController::Base
  layout 'application'
end
于 2012-10-12T20:32:00.470 に答える
0

ベストプラクティスは、プロジェクトをページではなく「コンポーネント」で構成されていると見なすことです。したがって、コンポーネントのスタイルを最新かつ一貫性のあるものに保つことに重点を置いてください。

したがって、スケーリングせず、小さな(っぽい)プロジェクトでも維持するのが難しい個々のページをコーディングするのではなく、要素を再利用可能なコンポーネントに変える方法を探してください。ブートストラップはデフォルトでこの方法であるため、他のコンポーネントよりも多く使用する特定のコンポーネントがある場合は、それらをリファクタリングの優先順位にしてから、ページ全体で繰り返しパターンを探し、セマンティックなコンポーネントベースのクラスを作成する方法を検討してください。それらを説明します。

これの代わりに:

.sidebar-home {}

これを試して:

.sidebar-narrow {} // or whatever describes your element

ここでの有効なポイントは、このプロジェクト以上の作業を行う場合は、CSS / HTMLをコンポーネントで構成されていると考える習慣を身に付け、コードを再利用して、 UI。

于 2012-10-13T11:30:31.190 に答える