私はもう試した
#Default size for text inputs.
config.default_input_size = 10
config/initializers /simple_form.rbから
私も試しました<%= f.input :message, :input_html => {:size => 10} %>
しかし、これらのどちらも、私のテキストフィールドの表示方法については1つも変わりません。
あなたはこれをする必要があります
<%= f.input :message, :input_html => {:rows => 10} %>
Htmlテキストエリアタグ属性には、rows
とcols
の2つの属性があり、テキストエリアの行と列の数(つまり幅)を指定できます。これが機能しない場合は、コンソールを開いて、cssが高さを上書きしているかどうかを確認してください。
:input_htmlオプションを渡すと、デフォルト値がオーバーライドされます。動作を変更できるcssクラスの属性値を確認する必要があります。
<%= f.input : message, :as => :text, :input_html => { 'rows' => 10} %>
入力フィールドの属性に:as => :text
を追加し、入力htmlにスタイルと行を追加することでこれを行うことができました。
<%= f.input :message, label: "Message: ", :as => :text, input_html: { :style=> 'width: 100%;', :rows => 4} %>
私にとって、「rows」属性が機能するのは:as => :text
であり、100%の幅により、固定幅ではなく流動的になりました。
「高さ」を変更する場合は、css属性を変更する必要があります。
<%= f.input :message, input_html: {style: 'height:10px;'} %>
古い質問、私は知っています。これは、SimpleForm3.2.0とRails 4.2.3:
<%= f.input_field :field_name, as: :text, class: "my-custom-class", rows: 5 %>
できるよ
<%= f.input :message, :size => "10x10" %>
高さと幅。
テキストフィールドでは機能するかもしれませんが、 text_area では間違いなく機能します。とにかく、メッセージにはtext_areaを使用することをお勧めします。
Rails 5.1とBootstrap4で同じ問題が発生しました。次のことを行いました:
<%= f.input :bio, input_html: {style: 'height:200px !important;'} %>
そしてそれは動作します。
Google ChromeのFirebugまたはCodeInspectorを試して、text_field
要素を検査し、正確なクラス名を確認して、スタイルシートファイルで直接変更してください。