CSS菜单仅在第一次悬停时移动

CSS菜单仅在第一次悬停时移动,css,menu,hover,Css,Menu,Hover,我这里有一个CSS菜单 当我将鼠标悬停在菜单上时,它会移动,但只有在第一次发生悬停事件时才会移动 之后,它就不动了 我不明白为什么会发生这种情况。您的导航从34像素的高度跳到36像素。您可以静态地将它设置为34像素,或者将所有li的填充和边距设置为0 你能发布你的css吗 从外观上看,您正在设置悬停时的边框宽度,从而向下推菜单项。您可以尝试使用绝对定位,并将顶部高度调整为-1或类似的值 例如,您的css可能看起来像 #listContainer{position:relative;} .lis

我这里有一个CSS菜单

当我将鼠标悬停在菜单上时,它会移动,但只有在第一次发生悬停事件时才会移动

之后,它就不动了


我不明白为什么会发生这种情况。

您的导航从34像素的高度跳到36像素。您可以静态地将它设置为34像素,或者将所有li的填充和边距设置为0

你能发布你的css吗

从外观上看,您正在设置悬停时的边框宽度,从而向下推菜单项。您可以尝试使用绝对定位,并将顶部高度调整为-1或类似的值

例如,您的css可能看起来像

#listContainer{position:relative;}
.listItem{position:absolute;top:0;}
.listItem:hover{top:-1;}

我不知道为什么整个导航菜单在chrome中向下移动而没有看到您的css。

我只是注意到在IE10中,它每次悬停时都会移动。在Chrome中,这是第一次。为什么你要在运行时将整个菜单作为JS加载?你隐藏了你网站上所有相关的链接,这可能会破坏你的谷歌排名,并可能导致这个问题。我一直在这样做。这样,如果我需要更改导航,我只需更改一次。在移动菜单之前,它从来不会引起任何问题。css太长,无法发布,但它在这里:谢谢。我替换了边框宽度的每个实例:2px0;边框宽度:-1px0;这就成功了。谢谢