CSS:使用Rails'form_for`生成的表单扩展输入框?

时间:2013-12-29 03:56:08

标签: html css ruby-on-rails devise

所以我对前端很新,所以我有一个简单的CSS问题:

我使用form_for方法生成了一个使用Devise生成的表单,如下所示:

<%= form_for(resource, :as => resource_name, :url => session_path(resource_name), :html => {:class => "form-signin"} ) do |f| %>

  <div class="account-wall">    
      <%= f.email_field :email, class: 'form-control', autofocus: true, placeholder: 'Email' %><br />

      <%= f.password_field :password, class: 'form-control', autofocus: true, placeholder: 'Password' %>

      <% if devise_mapping.rememberable? -%>
        <div><%= f.check_box :remember_me %> <%= f.label :remember_me %></div>
      <% end %>

      <%= f.submit "Sign in" %>

  </div>

<% end %>

<%= render "devise/shared/links" %>

我的样式表:

.form-signin
{
    max-width: 330px;
    padding: 15px;
    margin: 0 auto;
    padding-top: 5px;
}

.account-wall
{
    margin-top: 20px;
    padding: 40px 0px 20px 0px;
    background-color: #f7f7f7;
    -moz-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
}
.form-signin .form-control
{
    position: relative;
    font-size: 12px;
    height: auto;
    padding: 6px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

这就是上面代码产生的内容:

enter image description here

将{/ 1}}中的输入框/记住我/按钮居中并使它们更宽一点的最简单方法是什么?

生成的HTML:

account-wall

1 个答案:

答案 0 :(得分:0)

See demo here

.form-signin
{
    max-width: 330px;
    padding: 15px;
    margin: 0 auto;
    padding-top: 5px;
    text-align:center; /*add this;*/
}

.account-wall
{
    margin-top: 20px;
    padding: 40px 0px 20px 0px;
    background-color: #f7f7f7;
    -moz-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
}
/*add below*/
.account-wall input[type=email], .account-wall input[type=password]{margin:5px 5px;width:280px;}
.account-wall div{display:inline-block;}
.account-wall button{display:inline-block;}

Updated demo here

/*add below*/
.account-wall input[type=email], .account-wall input[type=password]{margin:5px 5px;width:280px;}
.account-wall div{display:inline-block; width:165px;}
.account-wall input[type=submit]{width:110px;}