Css选择器 - 选择所有兄弟姐妹直到某个兄弟姐妹

MEM*_*MEM 2 css jquery css-selectors css3

我们希望避免对代码使用过多的类.

我们有以下html结构:

<div id='hello'></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div id='hello2'></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div id='hello3'></div>
<div></div>
<div></div>
Run Code Online (Sandbox Code Playgroud)

例如,我们如何选择所有div #hello,但直到#hello2

这可能只使用css选择器吗?

我们可以使用脚本语言(jquery)来实现吗?

更新:

尽管需要一个选择器,确实有效,但我需要将它放在一个javascript条件中......很抱歉没有提到它并且更清楚.

pan*_*her 6

你不需要JS(也不是jQuery框架),它是CSS的任务.

使用兄弟选择器:

<style>
    #hello ~ div {background: red} /* four divs after #hello will be red */
    #hello2, #hello2 ~ div {background: white} /* reset red background to default, #hello2 and all next will be white */
</style>
Run Code Online (Sandbox Code Playgroud)

https://jsfiddle.net/sgdedg9z/


Ale*_*sta 0

好的,您可以使用nextUntil. 但是,既然你想要一个条件。您应该找到一种方法从中获取布尔值。

例如添加到它.hasClass()