所以我是前端新手,所以我有一个简单的 CSS 问题:
我有一个使用 Devise 使用 form_for
方法生成的表单,如下所示:
<%= 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;
}
这就是上面的代码产生的结果:
将输入框/记住我/按钮置于 account-wall
中心并使其更宽一点的最简单方法是什么?
生成的 HTML:
<div class="container">
<form accept-charset="UTF-8" action="/guest/actives/sign_in" class="form-signin" id="new_active" method="post"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="✓" /><input name="authenticity_token" type="hidden" value="kCoKZR1wtX5dTGuvw8p+P0ZsTi3vBEv08IQXh+IOWhM=" /></div>
<div class="account-wall">
<img class="profile-img" src="../../assets/akpsi_bw_200.png" alt="akpsi_color_200">
<input autofocus="autofocus" class="form-control" id="active_email" name="active[email]" placeholder="Email" type="email" value="" /><br />
<input autofocus="autofocus" class="form-control" id="active_password" name="active[password]" placeholder="Password" type="password" />
<div><input name="active[remember_me]" type="hidden" value="0" /><input id="active_remember_me" name="active[remember_me]" type="checkbox" value="1" /> <label for="active_remember_me">Remember me</label></div>
<input name="commit" type="submit" value="Sign in" />
</div>
</form>
最佳答案
.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;}
/*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;}
关于html - CSS:以 Rails 的 `form_for` 生成的形式扩展输入框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20821997/