【发布时间】:2019-05-28 10:47:08
【问题描述】:
那里有类似的问题,但显然我没有找到类似的问题。所以问题是:
当悬停 ::before 伪元素(不是宿主元素)时,如何在 ::after 伪元素上应用一些样式?
代码示例:
.contact {
position: relative;
}
.contact::before {
content: '';
position: absolute;
top: 0;
right: -10px;
width: 7px;
height: 7px;
border-radius: 50%;
background-color: hotpink;
}
.contact::after {
content: 'Preferred contact';
font-size: 10px;
color: #fff;
padding: 5px 10px;
position: absolute;
top: 0;
right: -15px;
transform: translateX(100%);
border-radius: 5px;
background-color: rgba(0, 0, 0, .5);
display: none;
}
.contact:hover::after {
display: block;
}
<span class="contact">skype_hello85</span>
所以当悬停元素(跨度)本身时 - 一切都很好。但我想 ::after 只会在 ::before 悬停时显示,而不是宿主元素本身。
感谢您的帮助!
【问题讨论】:
-
简短回答:你不能。但是如果你可以改变html你就可以做到
-
谢谢。是的,我知道这件事。我只是对是否可以在没有额外 HTML 噪音的情况下制作它很感兴趣。
-
不工作。
::after或::before没有悬停语句。
标签: html css hover pseudo-element