You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

水平滚动导航栏滚动后hover触发子下拉菜单位置偏移问题

问题原因

你的子菜单使用absolute绝对定位,但作为其直接父容器的.each菜单项未设置position: relative,导致子菜单的定位基准是全局根元素而非当前 hover 的菜单项。导航栏横向滚动时菜单项的位置随滚动偏移,但子菜单始终基于初始视口位置计算坐标,就会出现偏移问题。

解决方案

只需修改.each类的 CSS 规则,为其添加相对定位,同时给一级子菜单补充明确的定位属性即可:

/* 修改原有.each类,新增相对定位属性 */
.each {
    cursor: pointer;
    background:white;
    position: relative;
}
/* 新增一级子菜单定位规则,确保对齐父菜单项 */
.nav > .each > .sub-menu {
    top: 100%;
    left: 0;
}

原有其他代码不需要修改,修改后无论导航栏横向滚动到什么位置,子菜单都会跟随当前 hover 的菜单项展示在正确位置。

内容的提问来源于stack exchange,提问作者Amir Rahman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 07:06:01