首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CSS -父级匹配中的所有元素都是最后一个子选择器。如何将样式添加到表单中包含的所有元素(除了最后一个元素)?

CSS -父级匹配中的所有元素都是最后一个子选择器。如何将样式添加到表单中包含的所有元素(除了最后一个元素)?
EN

Stack Overflow用户
提问于 2018-04-01 09:57:39
回答 2查看 36关注 0票数 0

通过使用以下样式块,我试图在窗体的最后一个直接子元素之外的所有窗体中添加底部边框:

但是表单的所有子元素似乎都与:last-child选择器匹配。

这是我的代码:

代码语言:javascript
复制
 .form-for:not(:last-child) > div {
        border-bottom: 1px solid #6d6e71;
    }
代码语言:javascript
复制
<form class="form-for">
        <div>
            <div class="form-group">
                <label class="form-for-label">Name</label>
                <input type="text" name="Name" value="" placeholder="Name">
            </div>
        </div>
        <div>
            <div class="form-group">
                <label class="form-for-label">Description</label>
                <input type="text" name="Description" value="" placeholder="Description">
            </div>
        </div>
        <div>
            <div class="form-group">
                <label class="form-for-label">Creation Date</label>
                <input type="text" name="Creation Date" value="" placeholder="Creation Date">
            </div>
        </div>
    </form>

需要注意的是,这个表单是使用react form-for-object库动态生成的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-01 10:06:10

如果您只想选择直接子级,则可以使用parent > child

代码语言:javascript
复制
.form-for>div:not(:last-of-type)>div {
  border-bottom: 1px solid #6d6e71;
}
代码语言:javascript
复制
<form class="form-for">
  <div>
    <div class="form-group">
      <label class="form-for-label">Name</label>
      <input type="text" name="Name" value="" placeholder="Name">
    </div>
  </div>
  <div>
    <div class="form-group">
      <label class="form-for-label">Description</label>
      <input type="text" name="Description" value="" placeholder="Description">
    </div>
  </div>
  <div>
    <div class="form-group">
      <label class="form-for-label">Creation Date</label>
      <input type="text" name="Creation Date" value="" placeholder="Creation Date">
    </div>
  </div>
  <input type="submit" />
</form>

票数 0
EN

Stack Overflow用户

发布于 2018-04-01 10:03:07

(试试看:)

代码语言:javascript
复制
.form-for > div:not(:last-child) {
    border-bottom: 1px solid #6d6e71;
}

另一种解决办法(可选)

代码语言:javascript
复制
.form-for > div {
    border-bottom: 1px solid #6d6e71;
}
.form-for > div:last-child {
    border-bottom: 0px solid #fff;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49596880

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档