标签显示在复选框下方

时间:2012-08-20 11:01:19

标签: css ruby-on-rails view-helpers

<%= f.check_box :openid_enabled %>
<%= f.label :openid_enabled, 'OpenID' %>

以上代码生成此HTML

<input type="hidden" value="0" name="application[openid_enabled]">
<input type="checkbox" value="1" name="application[openid_enabled]" id="application_openid_enabled">
<label for="application_openid_enabled">OpenID</label>

并且标签显示为

[x]
OpenID

而不是

[x] OpenID

我是否需要设置样式或者rails帮助器具有一些内置功能?

我在我的Rails应用程序中使用twitter bootstrap CSS框架。

3 个答案:

答案 0 :(得分:5)

我使用了以下修复问题而没有覆盖twitter bootstrap css的风格。

<%= f.label :openid_enabled, class: 'checkbox' do %>
  <%= f.check_box :openid_enabled %>
  OpenID
<% end %>

生成以下HTML

<label for="application_openid_enabled" class="checkbox">
  <input type="hidden" value="0" name="application[openid_enabled]">
  <input type="checkbox" value="1" name="application[openid_enabled]" id="application_openid_enabled">
  OpenID
</label>

以下是参考http://twitter.github.com/bootstrap/base-css.html

感谢@MyHeadHurts和@Dipaks提供宝贵的意见。

答案 1 :(得分:4)

这必须发生,因为inputlabel设置为display: block;您可以通过制作这些元素inline -

将其显示在一行中
input, label{ display: inline; }

答案 2 :(得分:1)

我知道它的旧版本,但今天最好的方法是使用标签上的checkbox-inline class