我希望当鼠标停留在div
hello
时,类nice_day
和图像的段落不会受到影响。
如何使用css3?
<div class="hello">
<div class="stack"><img src="1.png"/></div>
<div class="overflow"><p class="ilove"><img src="2.png"/>Im a text</p>
<p class ="programming"Im other text</p>
<div class="Have">
<img src="3.png"/>
<p class="nice_day"></p>
</div>
</div>
</div>
由于
答案 0 :(得分:1)
此方法查看祖先的:hover
状态,并仅在需要时添加样式。
<强> CSS 强>
/* just for formatting so we can see the boxes */
.hello {
border: 1px solid red;
}
.hello > div {
padding: 6px;
border: 1px solid silver;
}
/*
Selector(s) here to determine which element(s) should be impacted by the
parent's hover, and which should not.
*/
.hello:hover div:first-child {
background-color: yellow;
}
<强> HTML 强>
<div class="hello">
<div>Hover effect</div>
<div>No hover effect</div>
</div>
根据悬停时应修改的属性,您可以将悬停样式应用于祖先,然后重新设置子项(例如,将background-color
设置为白色,即使父项的悬停背景为黄色)。
我更喜欢第一种方法。
答案 1 :(得分:0)
IF 您希望在父元素悬停时保留子元素的样式,您需要取消父样式,如下所示
.hello{text-decoration: underline;}
.hello:hover img, .hello:hover .nice_day{text-decoration: none}
请注意,我们为子元素text-decoration: none
设置了img
; .nice_day
以防.hello
悬停时加下划线。
答案 2 :(得分:0)
您可以将默认css重新设置为p.nice_day
:
div.hello:hover p.nice_day{
//your default css of .nice_day
}