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}