淘先锋技术网

首页 1 2 3 4 5 6 7

在 CSS 中,我们可以使用“~”选择器获取一个元素之前的所有兄弟元素,但是如果我们只需要获取前一个兄弟元素,该怎么办呢?这就需要使用到一些 CSS3 中的新选择器。

要想获取前一个兄弟元素,我们可以使用“+”选择器。比如说,下面的代码就可以选中类名为“sibling2”的前一个兄弟元素:

.sibling2 + .sibling1 {
/* 具体的样式 */
}

如果我们将 HTML 改为下面这样,我们会发现“+”选择器失效了:

<div class="parent">
<div class="sibling1"></div>
<div class="sibling2"></div>
<div class="sibling3"></div>
</div>

这是因为在新的 HTML 中,“sibling2”并不是“sibling1”的直接兄弟元素了。解决这个问题的方法是使用“~”选择器,它可以选中前面所有的兄弟元素:

.sibling2 ~ .sibling1:first-child {
/* 具体的样式 */
}

这样我们就可以成功地选中“sibling2”前面的兄弟元素了。