CSS:如何缩进一个文本区域而不是另一个?
我正在尝试缩进整个表单:CSS:如何缩进一个文本区域而不是另一个?,css,ruby-on-rails-3,Css,Ruby On Rails 3,我正在尝试缩进整个表单: <%= form_for([micropost, micropost.comments.build], :html => { :id => "blah_form" }) do |f| %> <div class="field"> <p2>Who are you?</p2> <%= f.text_field :commenter %>
<%= form_for([micropost, micropost.comments.build], :html => { :id => "blah_form" }) do |f| %>
<div class="field">
<p2>Who are you?</p2>
<%= f.text_field :commenter %>
</div>
<div class="field">
<p2>What deal are you offering?</p2>
<%= f.text_area :body %>
</div>
<div class="actions">
<%= f.submit "Submit"%>
</div>
<% end %>
如果有三个独立的声明,请尝试使用此方法将CSS本地化为该表单
#blah_form input,
#blah_form textarea,
#blah_form b4
{margin-left:80px}
或者创建一个缩进类:
.indent {
margin-left:80px;
}
可用于所有需要缩进的元素。您可以使类更智能一些,以便将缩进应用于特定的嵌套元素,例如
.indent > div {
margin-left:80px;
}
(在ie6中不起作用)这意味着将
左边距
应用于.indent的所有直接子级,这些子级是div。在文本区域周围的div中添加另一个类,并使用该类删除左边距
例如
还有你的CSS
#blah_form input, textarea, b4 {margin-left:80px}
应用于#blah_表单内的任何输入以及所有textarea和b4(我认为您指的是b4类,在这种情况下,它应该是.b4)
.indent {
margin-left:80px;
}
.indent > div {
margin-left:80px;
}
<div class="field no-indent">
.no-indent textarea { margin-left:0 }
#blah_form input, textarea, b4 {margin-left:80px}