【发布时间】:2019-08-14 08:27:16
【问题描述】:
下面是我想要的最终结果的示例,但是在现实生活中,<div class="item"></div> 会生成未知数字,因此:nth-child(3) 和:nth-child(5) 这种硬编码样式是不可能的。 active center 课程将始终在中心孩子中。那么,有没有任何css方式可以在<div class="item active center"></div>之间设置孩子的样式
body{
margin:0;
background-color:#333;
}
.container{
display:flex;
align-items:center;
}
.item{
height:50px;
width:50px;
background-color:#fff;
margin:10px;
opacity:0.2;
}
.item.active.center{
opacity:1;
}
.item.active:nth-child(3){
opacity:1;
}
.item.active:nth-child(5){
opacity:1;
}
<div class="container">
<div class="item"> </div>
<div class="item active"> </div>
<div class="item active"> </div>
<div class="item active center"> </div>
<div class="item active"> </div>
<div class="item active"> </div>
<div class="item"> </div>
</div>
喜欢这个例子
http://jsfiddle.net/4a5uhm6x/
而不是中间 1 opacity:1 ,需要中间 3 个孩子 opacity:1
【问题讨论】:
-
@sodimel 我试过你说的链接是重复的
:not(:first-child):not(:last-child)不是我想要的结果,它会选择所有不是第一个也不是最后一个的孩子,我只需要两个active center之间的子级要设置样式 -
@sodimel 请删除重复项,这是完全不同的事情
-
没有 css 可以对随机数量的元素执行此操作 - css 不会以这种方式与 dom 交互,您需要一个 js 解决方案(或服务器端解决方案来添加适当的类)
-
我认为没有 JavaScript 就无法做到这一点。
-
在猫头鹰轮播中,您可以为物品添加自定义类。检查stackoverflow.com/questions/28900207/…
标签: html css owl-carousel