Orm*_*moz 2 html css html5 css-selectors css3
我有一个像这样的HTML页面:
<p></p>
<p></p>
<p></p>
<div></div>
<p></p>
<p></p>
<p></p>
<div></div>
Run Code Online (Sandbox Code Playgroud)
这种模式还在继续.
通常,div元素不应显示为:
div{display:none;}
Run Code Online (Sandbox Code Playgroud)
但是当一个段落悬停时,应该显示之后的第一个div元素:
p:hover+div{display:block;}
Run Code Online (Sandbox Code Playgroud)
但这只适用于以前的p
.还有这个:
p:hover~div{display:block;}
Run Code Online (Sandbox Code Playgroud)
显示所有div
s后徘徊p
不仅仅是第一个后.
如何在悬停后只显示第一个不相邻的div p
?
其实我正在寻找一个选择器first-sibling
.
您应该使用以下设置:
p:hover ~ div ~ div {
display:none;
}
Run Code Online (Sandbox Code Playgroud)
这将在悬停段落的第div
一个之后将显示设置为无div
.
div {
display: none;
}
p:hover ~ div {
display: block;
}
p:hover ~ div ~ div {
display: none;
}
Run Code Online (Sandbox Code Playgroud)
<p>p1</p>
<p>p2</p>
<p>p3</p>
<div>d1</div>
<p>p1</p>
<p>p2</p>
<p>p3</p>
<div>d2</div>
<p>p1</p>
<p>p2</p>
<p>p3</p>
<div>d3</div>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
840 次 |
最近记录: |