使伪元素在将鼠标悬停在其父元素的父标签上时移动



当父元素的父元素悬停在上面时,我想使伪元素的边界移动。基本上,我希望它在悬停在"lk">上时移动,而不是仅在悬停在"ci">上时激活,但我似乎无法使其工作。它只适用于div吗?如果是的话,我愿意接受这个选择。我试过用div做类似的事情,但我似乎仍然无法让它发挥作用,所以我很高兴能学会如何做。

HTML

<lk><de>Name:</de><ci>Luci`a Bloom</ci></lk>  

CSS

lk{
margin-right:49px;
}
de{
color:black;
font-family:karla;
font-weight:900;
border-bottom:1px solid #EAEAEA;
padding-bottom:5px;
padding-right:7px;
}
ci{
color:black;
text-transform: uppercase;
margin-left:1px;
font-family:calibri;
border-bottom:1px solid #EAEAEA;
padding-bottom:5px;
font-weight:200;
position: relative;
font-size:15px;
color: black;
width: fit-content;
margin-left:1px
} 
ci:after { 
content: "";
border-bottom:1px solid black;
width: 100%;
height: 120%;
position: absolute;
top: -5px;
z-index: 1;
right:0px;
transition: 2.5s;   
}
#deetz ci:hover:after{
border-bottom:1px solid black;
transition: 2.5s;
width:0%;
}

我试图或多或少地理解您的问题——当悬停在整个lk元素上时,您希望psuedo悬停激活。如果是这样,请尝试将hover psuedo类添加到lk元素,并用>选择器指示它需要影响哪个元素

lk:hover > ci:after{
border-bottom:1px solid black;
transition: 2.5s;
width:0%;
}

最新更新