【发布时间】:2021-06-30 14:12:05
【问题描述】:
我正在尝试在我的导航栏链接上实现一个简单的“悬停下划线”动画。但是,动画完成后会留下杂散像素,如下图 GIF 所示。
Underline animation leaves stray pixel to the left
奇怪的是,如果我将光标悬停在具有相同动画的两个链接之间,则不会发生这种情况。仅当我将鼠标悬停在链接上然后将光标移动到其他位置时才会发生这种情况。
The bug doesn't happen while hovering between navbar links
我已经实现了导航栏如下:-
<div class="nav-bar-flex">
<a href="#">Home</a>
<a href="#">Company</a>
<a href="#">Careers</a>
</div>
CSS:
.nav-bar-flex a {
display: inline-block;
color: white;
text-decoration: none;
font-size: 1rem;
font-weight: 400;
letter-spacing: -0.055rem;
}
.nav-bar-flex > a::after {
content: "";
display: block;
width: 0%;
border-bottom: 2px var(--secondary-orange) solid;
margin-top: 0.3rem;
transition: width 300ms;
}
.nav-bar-flex > a:hover::after {
width: 100%;
transition: width 300ms;
}
【问题讨论】:
标签: html css frontend css-animations web-frontend