为了给我的问题提供一些背景,我有12个兄弟div,每个div代表一年中的一个月。在任何时候,可以选择0、1或2个这些div。选择时,会将“active”类应用于该div。当选择两个div时,我想将样式应用于两个选定div之间的所有div。
例如:
在上面的代码片段中,我想为活动月份以及所有中间月份应用CSS样式。在CSS中是否可能实现这一点,还是最好使用JS?
编辑:
这个方法不起作用,但我认为它可能是正确的方向。
例如:
<div class="month">Jan</div>
<div class="month active">Feb</div>
<div class="month">Mar</div>
<div class="month">Apr</div>
<div class="month">May</div>
<div class="month">Jun</div>
<div class="month active">Jul</div>
<div class="month">Aug</div>
<div class="month">Sep</div>
<div class="month">Oct</div>
<div class="month">Nov</div>
<div class="month">Dec</div>
编辑:
这个方法不起作用,但我认为它可能是正确的方向。
.month.active ~ .month {
background-color: $color-lighter-text;
color: #fff;
}
.month.active:nth-child(2) ~ .month {
background-color: #fff !important;
color: $color-muted-text !important;
}