悬停时奇怪的导航文本行为
Weird navigation text behavior on hover
我有一个 css 问题,我无法调试。我对主导航中的悬停做了一个 'highlight' 效果,它似乎在文本后面和下方突出显示了一点。这按预期工作。
但是在两个较长的导航链接上,退出悬停状态会导致文本从右侧滑入,就像在悬停状态结束时缩小和展开一样。
您可以在上面的 gif 中看到这一点 - 悬停状态工作得很好,但是当离开悬停状态时,第二个和第四个导航链接中的文本似乎重置并从右侧滑入。
我对此感到困惑 - 我从未见过这样的东西,而且这个主题 (Astra) 对我来说是新的。显然悬停状态与非悬停状态有一些不同。也许这与正确对齐的导航文本有关?我不知道:/
现场观看
问题出在你的悬停效果上:在 :before 选择器中,悬停时,你将位置设置为“绝对”,这意味着当项目 not 悬停时,内容位置是静态的 - 所以它“推动”你的菜单项。
你应该尝试将所有不会改变的东西都放在你的初始状态,并且只添加 css 改变你的悬停选择器的属性:
#primary-menu .menu-link::before { /* This is your initial state */
content: '';
display: block;
width: 0;
position: absolute;
background-color: rgba(47,139,255,0.8);
height: .8em;
top: 1.5em;
left: 5%;
z-index: 1;
transition-duration: .25s;
}
#primary-menu .menu-link:hover::before { /* This is your hover state */
width: 0;
}
我有一个 css 问题,我无法调试。我对主导航中的悬停做了一个 'highlight' 效果,它似乎在文本后面和下方突出显示了一点。这按预期工作。
但是在两个较长的导航链接上,退出悬停状态会导致文本从右侧滑入,就像在悬停状态结束时缩小和展开一样。
您可以在上面的 gif 中看到这一点 - 悬停状态工作得很好,但是当离开悬停状态时,第二个和第四个导航链接中的文本似乎重置并从右侧滑入。
我对此感到困惑 - 我从未见过这样的东西,而且这个主题 (Astra) 对我来说是新的。显然悬停状态与非悬停状态有一些不同。也许这与正确对齐的导航文本有关?我不知道:/
现场观看问题出在你的悬停效果上:在 :before 选择器中,悬停时,你将位置设置为“绝对”,这意味着当项目 not 悬停时,内容位置是静态的 - 所以它“推动”你的菜单项。
你应该尝试将所有不会改变的东西都放在你的初始状态,并且只添加 css 改变你的悬停选择器的属性:
#primary-menu .menu-link::before { /* This is your initial state */
content: '';
display: block;
width: 0;
position: absolute;
background-color: rgba(47,139,255,0.8);
height: .8em;
top: 1.5em;
left: 5%;
z-index: 1;
transition-duration: .25s;
}
#primary-menu .menu-link:hover::before { /* This is your hover state */
width: 0;
}