0

Rails3.1プロジェクトで単純な形式のgemをtwitterブートストラップと一緒に使用します。私はいくつかのフォームビューを持っていますが、それらはすべてうまく見えます。しかし今、私はフォームの1つでテキスト入力フィールドのスタイルを設定して、少し小さくするのが好きです。テキスト入力フィールドは、「ロール」と呼ばれる私のコントローラーの1つの編集フォームビューにあります。フォームの部分は次のようになります。

= simple_form_for @role, :html => { :class => 'form-horizontal' } do |f| 
  = f.error_notification
  = f.input :name
  = f.input :description
  .form-actions
    = f.button :submit, :class => 'btn-primary'
    = link_to t('.cancel', :default => t("helpers.links.cancel")), roles_path, :class => 'btn'

下にスタイルファイルがあります:

app/assets/stylesheets/roles.css.scss

これはscaffoldコマンドで作成されました。ここにスタイリングを入れようとしましたが、これにより、アプリケーションのすべての形式が変更されます。単純なフォームを持つ1つの特別なフォームビューに対してのみテキスト入力フィールドのスタイルを変更する良い方法はありますか?入力テキストフィールドを幅100ピクセルから高さ50ピクセルのサイズにしたい場合、スタイリングはどこに配置すればよいですか。また、スタイリングはどのようになりますか。

4

1 に答える 1

1

ロール専用の特別な CSS ファイルがある場合でも、そのことを知っておく必要があります。最終的に、すべての CSS ファイルがバンドルされ、一緒に提供されます。これは、roles.css がすべてのページに読み込まれることを意味し、その結果、説明した動作が発生します。

単一のフォームのスタイルを設定したい場合は、クラスを追加することでこれを行うことができます:

= simple_form_for @role, :html => { :class => 'form-horizontal roles-form' } do |f| 

これで、CSS 定義の範囲を指定でき.roles-form、それらはこの 1 つのフォームにのみ適用されます。

于 2012-12-31T13:57:17.193 に答える