css - nth-child 第一个和最后一个都应用于元素

标签 css css-selectors

我正在尝试为以下标记编写一个选择器:

<div class="row">
    <a href="#">
        <div class="one-third column">content</div>
    </a>
    <a href="#">
        <div class="one-third column">content</div>
    </a>
    <a href="#">
        <div class="one-third column">content</div>
    </a>
</div>

选择器应该获取第一个 .one-third.column 和最后一个 .one-third.column 并应用一些自定义 CSS。

到目前为止我已经尝试过:

.row a > .one-third:first-child {
    padding-left: 0;
}

.row a > .one-third:last-child {
    padding-right: 0;
}

但是,这会导致上述两个选择器都应用于每个三分之一的元素。我试图在不向第一个和最后一个元素添加类的情况下实现这一目标。如有任何帮助,我们将不胜感激。

最佳答案

这可以完成,但是您需要选择链接的第一个和最后一个子链接。如果您要进入链接内部并选择只有一个元素的第一个和最后一个子元素,则您所需的样式将无法工作。如果您选择第一个和最后一个 a 标记,您将获得所需的结果:

.row a:first-child .one-third {
  padding-left: 0;
}

.row a:last-child .one-third {
  padding-right: 0;
}
<div class="row">
  <a href="#">
    <div class="one-third column">content</div>
  </a>
  <a href="#">
    <div class="one-third column">content</div>
  </a>
  <a href="#">
    <div class="one-third column">content</div>
  </a>
</div>

这是一个用背景颜色显示的 fiddle :https://jsfiddle.net/oprkd3vp/

希望这有帮助。

关于css - nth-child 第一个和最后一个都应用于元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48458580/

相关文章:

jquery - 如何仅将大纲应用于自定义样式的 HTML 选择元素的扩展可点击元素?

css - 背景颜色淡出,没有悬停

html - 如何选择这张表的第一个和最后一个 child ?

css - 样式跨度元素跟随另一个跨度,中间没有文本内容

css - W3C CSS Validator 在 svg 规则 : "only 0 can be a unit" 上显示错误

internet-explorer - ie的盒子阴影发光效果

html - 如何向 WordPress 菜单栏添加 2 条条纹?

javascript - 在相邻的表格单元格中设置单选标签的样式

jquery - 每列中第一个 td 不为空的 CSS 选择器

css - 有没有办法针对 css 中的所有类?