【问题标题】:CSS menu moves on first hover onlyCSS 菜单仅在第一次悬停时移动
【发布时间】:2013-06-14 08:30:08
【问题描述】:

我这里有一个 CSS 菜单 http://www.salvationarmyqc.org/

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

之后,它就不动了。

我不知道为什么会这样。

【问题讨论】:

  • 我刚刚注意到,在 IE10 中,它每次悬停时都会移动。在 Chrome 中,这只是第一次。
  • 为什么在运行时将整个菜单加载为 JS?您通过隐藏您网站上的所有相关链接来杀死您的 Google 排名,并且可能会导致此问题。
  • 我一直这样做。这样,如果我需要更改导航,我只需更改一次。就移动菜单而言,它从来没有引起过问题。

标签: css menu hover


【解决方案1】:

你能发布你的CSS吗?

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

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

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

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

【讨论】:

  • css 太长,无法发布,但在这里:salvationarmyqc.org/css/nav.css
  • 谢谢。我替换了边框宽度的每个实例:2px 0 0 0;边框宽度:-1px 0 0 0;这就是诀窍。谢谢
【解决方案2】:

您的#navigation 正在从 34 像素的高度跳到 36 像素。您可以将其静态设置为 34 像素,或者将所有 li 的填充和边距设置为 0。

【讨论】:

    猜你喜欢
    • 2013-06-21
    • 2018-04-23
    • 2015-07-22
    • 1970-01-01
    • 2013-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多