CSS 相关;针对特定的 li class
CSS related; targetting a special li class
以下情况需要一些帮助。
我有一个设置如下(简化)的滑块:
<div class="slider">
<ul>
<li>...</li>
<li class="current">...</li>
<li class="center active">...</li>
<li class="current">...</li>
<li>...</li>
</ul>
</div>
.slider li {opacity: 0.3;}
.slider li.center.active {opacity: 1;}
.slider li.current:first-child {opacity: 1;} // this here doesn't work.
我不会用.slider li:nth-child(2).current {opacity: 1;}
因为我使用的是滑块,所以 li
标签的数字不同。
除了改变 li classes 之外,还有其他方法可以仅改变第一个 current
class 的不透明度。
https://jsfiddle.net/1jko09xq/1/
i think you need this try this
在你的情况下,第一个电流 <li>
实际上是 <ul>
的第二个元素,使用这个 css
.slider li.current:nth-child(2) {opacity: 1;}
查看工作示例:https://jsfiddle.net/yudi/a3w1bshr/
In css we need to count position with overall elements and here its a second element of <ul>
您可以在要更改的 li 中添加额外的 class。
HTML:
<div class="slider">
<ul>
<li>...</li>
<li class="current sliderOpacity">...</li>
<li class="center active">...</li>
<li class="current">...</li>
<li>...</li>
</ul>
</div>
CSS:
.sliderOpacity {
opacity: 1;}
您可以使用下面提到的代码:
<div class="slider">
<ul>
<li>...</li>
<li class="current">...</li>
<li class="center active">...</li>
<li class="current">...</li>
<li>...</li>
</ul>
</div>
.slider li {opacity: 0.3;}
.slider li.center.active {opacity: 1;}
.slider li.current {opacity: 1;}
.slider li.center.active ~ li.current {opacity: 0.3;}
给你,先生
.slider li,
.slider ul > .current ~ .current { opacity: 0.3; }
.slider li.center.active,
.slider ul > .current { opacity: 1; }
<div class="slider">
<ul>
<li>...</li>
<li class="current">...</li>
<li class="center active">...</li>
<li class="current">...</li>
<li>...</li>
</ul>
</div>
以下情况需要一些帮助。 我有一个设置如下(简化)的滑块:
<div class="slider">
<ul>
<li>...</li>
<li class="current">...</li>
<li class="center active">...</li>
<li class="current">...</li>
<li>...</li>
</ul>
</div>
.slider li {opacity: 0.3;}
.slider li.center.active {opacity: 1;}
.slider li.current:first-child {opacity: 1;} // this here doesn't work.
我不会用.slider li:nth-child(2).current {opacity: 1;}
因为我使用的是滑块,所以 li
标签的数字不同。
除了改变 li classes 之外,还有其他方法可以仅改变第一个 current
class 的不透明度。
https://jsfiddle.net/1jko09xq/1/
i think you need this try this
在你的情况下,第一个电流 <li>
实际上是 <ul>
的第二个元素,使用这个 css
.slider li.current:nth-child(2) {opacity: 1;}
查看工作示例:https://jsfiddle.net/yudi/a3w1bshr/
In css we need to count position with overall elements and here its a second element of
<ul>
您可以在要更改的 li 中添加额外的 class。
HTML:
<div class="slider">
<ul>
<li>...</li>
<li class="current sliderOpacity">...</li>
<li class="center active">...</li>
<li class="current">...</li>
<li>...</li>
</ul>
</div>
CSS:
.sliderOpacity {
opacity: 1;}
您可以使用下面提到的代码:
<div class="slider">
<ul>
<li>...</li>
<li class="current">...</li>
<li class="center active">...</li>
<li class="current">...</li>
<li>...</li>
</ul>
</div>
.slider li {opacity: 0.3;}
.slider li.center.active {opacity: 1;}
.slider li.current {opacity: 1;}
.slider li.center.active ~ li.current {opacity: 0.3;}
给你,先生
.slider li,
.slider ul > .current ~ .current { opacity: 0.3; }
.slider li.center.active,
.slider ul > .current { opacity: 1; }
<div class="slider">
<ul>
<li>...</li>
<li class="current">...</li>
<li class="center active">...</li>
<li class="current">...</li>
<li>...</li>
</ul>
</div>