我试过了
#Default size for text inputs.
config.default_input_size = 10
来自 config/initializers/simple_form.rb
我也试过<%= f.input :message, :input_html => {:size => 10} %>
但是这些都没有改变我的文本字段的显示方式。
我试过了
#Default size for text inputs.
config.default_input_size = 10
来自 config/initializers/simple_form.rb
我也试过<%= f.input :message, :input_html => {:size => 10} %>
但是这些都没有改变我的文本字段的显示方式。
你需要这样做
<%= f.input :message, :input_html => {:rows => 10} %>
Html 文本区域标签属性有两个属性rows
,即cols
允许您指定文本区域的行数和列数(即宽度)。如果这不起作用,请打开控制台并查看您的 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} %>
对我来说,正是:as => :text
它让“行”属性起作用,100% 的宽度使它变得流畅而不是固定宽度。
如果要更改“高度”,则需要修改 css 属性:
<%= f.input :message, input_html: {style: 'height:10px;'} %>
老问题,我知道。这就是 SimpleForm 3.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 作为消息。
尝试使用 Google Chrome 中的 Firebug 或 Code Inspector 来检查text_field
元素,查看确切的类名并直接在样式表文件中进行更改。
我刚刚在 Rails 5.1 和 Bootstrap4 上遇到了同样的问题。我做了以下事情:
<%= f.input :bio, input_html: {style: 'height:200px !important;'} %>
它有效。