如何在simple_form中插入标签后的<br>?

Zab*_*bba 3 forms ruby-on-rails-3

使用simple_form,我有一个像这样的简单输入:

<%= f.input :email %>
Run Code Online (Sandbox Code Playgroud)

这会生成(删除不相关的部分):

...
  <label>Email</label>
  <input .... />
...
Run Code Online (Sandbox Code Playgroud)

我希望输入控件低于标签,所以我需要一个<br/></label>:

...
  <label>Email</label>
  <br/>
  <input .... />
...
Run Code Online (Sandbox Code Playgroud)

我该怎么办?

我试过了:

插入一个<br/>config/initializers/simple_form.rb:

config.label_text = lambda { |label, required| "#{required} #{label} <br/>" }
Run Code Online (Sandbox Code Playgroud)

这会产生:

...
  <label>Email<br/></label>  #note the location of <br/>
  <input .... />
...
Run Code Online (Sandbox Code Playgroud)

<br/>之前刚刚为</label>.现在,这在显示下一个"线"的输入方面起作用,但它只是感觉"错误".

有没有办法正确地做到这一点?

Ste*_*sen 10

使用样式表规则通常比插入HTML标记更好,因为中断是格式而不是内容的问题.它可能像......一样简单

label {
    display: block;
}
Run Code Online (Sandbox Code Playgroud)

  • 值得注意的是,它不仅仅是意见,而且实际上是根据HTML(5)规范的正确方法:http://dev.w3.org/html5/spec/Overview.html#the-br-element. (2认同)