我该如何在Rails中更改text_field的长度?

13

所以我有这个文本框

<%= f.text_field :body, placeholder: "Make an offer ", :maxlength=>"254" %> 

现在它占用了所在盒子的100%宽度。我希望它只占用95%的宽度。到目前为止,我尝试过(来自其他论坛帖子)

添加:columns => "50",但这没有影响。我尝试在HTML标签中添加 :html => { :id => "offer_form" },然后将其放入我的CSS文件中。

#offer_form { width:50%;} 

这个方法没有成功

还有其他建议吗?

编辑:

我意识到在我的CSS文件中,我将其放在了/表单/下面

input, textarea, select, .uneditable-input {
  border: 1px solid #bbb;
  width: 98%;
  padding: 10px;
  height: auto !important;
  margin-bottom: 15px;

}

当我在这里更改宽度时,它起作用。但它会影响应用中所有表格(显然都是98%)的宽度。有没有办法只对这个字段进行标识,以便我可以独立编辑其宽度。

2个回答

24

在text_field中添加:size=>"50"选项

<%= f.text_field :body, :size=>"50", placeholder: "Make an offer ", :maxlength=>"254" %> 

为什么我的代码会出现“undefined method ‘size’” 的错误?有任何想法吗? 我本来以为“size”只是一个CSS属性。 - klondike-5-3226
2
如果你遇到了这个错误,那是因为你漏掉了冒号“:`”。应该是“:size”,而不是“size”。这个答案可能会让你的文本框变小,但如果你真的想让你的文本框宽度是父元素的95%,这个答案肯定不能帮助你。你需要使用CSS。 - user229044

6
使用CSS。字段的宽度与其最大字符数无关。
input.body {
  width:95%;
}

这并不会影响它。我还有其他的代码可以展示给你,或许能帮到你? - klondike-5-3226
那段代码可能不会影响它,除非你的<input>恰好有一个名为body的类。你应该将CSS应用于你特定的类/标识符。 - user229044
哦,好的。我想我知道发生了什么。我已经编辑了我的问题。 - klondike-5-3226

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接