css - 匹配指定元素之前的元素

标签 css css-selectors

我有以下列表:

<ul>
  <li class="parent">1.</li>
  <li class="child">1. first</li>
  <li class="child">1. second</li>
  <li class="child">1. third</li>

  <li class="parent">2.</li>
  <li class="child">2. first</li>
  <li class="child">2. second</li>
  <li class="child">2. third</li>
  <li class="child">2. fourth</li>
  <li class="child">2. fifth</li>

  <li class="parent">3.</li>
  <li class="child">3. first</li>
  <li class="child">3. second</li>
  <li class="child">3. third</li>
  <li class="child">3. fourth</li>

  <li class="parent">4.</li>
  <li class="child">4. first</li>
  <li class="child">4. second</li>
  <li class="child">4. third</li>
</ul>

我想为 first 和 last 元素设置指定的背景。虽然我对 first 没有问题:

.parent + .child {
  background-color: whitesmoke;
}

那我就不知道怎么处理鞋楦了。

简单地说:我想在 .parent 之前匹配 .child

最佳答案

li:nth-child(2n+2) {
  background-color: whitesmoke;
}

您正在寻找第 n 个子选择器。 http://jsfiddle.net/mKH7j/

关于css - 匹配指定元素之前的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19996019/

相关文章:

javascript - 当 ng-model 在文本字段中更改时使用 AngularJS 设置标签样式

css - 如何在具有静态高度和其中一些文本的 div 中创建高度响应图像?

Windows Courier 字体看起来非常 "Thin"

html - Bootstrap 文本左对齐

html - 对不同的元素应用不同的样式规则

css - 使用内容 :url 的图像不会在 firefox 中显示

java - 如何切换到框架并访问其中的元素?

javascript - 如何从路径而不是类或 ID 获取元素

java - 使用 Selenium WebDriver 的带有 contains() InvalidSelectorException 的 CSS 定位器

javascript - 如何在 Motoools 中使用 CSS2 选择器查找元素并将其隐藏?