代码之家  ›  专栏  ›  技术社区  ›  brainiak4431

IE8中未正确显示网站菜单

  •  0
  • brainiak4431  · 技术社区  · 10 年前

    这是我的网站: http://b.countylinemini.com/ 。IE 8及以下版本的菜单一团糟。似乎无法修复它。我有现代化设备在那里。我尝试通过将整个菜单封装在div中来修改css以应用样式。

    将其与旧IE版本中的屏幕截图进行比较。 https://www.browserstack.com/issue-tracker/945d68fd943803c1db897c7f3fbe455ba7dbfba4/winxp_IE_8.0.jpg

    感谢任何帮助

    1 回复  |  直到 10 年前
        1
  •  0
  •   Troy Thompson    10 年前

    这里的问题在于CSS。

    一个快速解决方案是为IE8及以下版本提供特定的CSS。 http://www.quirksmode.org/css/condcom.html

    菜单无序列表具有“display:table”样式,列表项具有“dispatch:table cell”样式,我认为这是旧IE浏览器的问题所在。

    要使其在旧IE中工作,您应该能够将两者都设置为“display:block”,并使用“float:left”浮动列表项

    仅仅这样做并不能让它看起来像完美的像素,但它应该运行良好。

    编辑: 若你们改变了菜单,并且你们关注的是古老的浏览器,保持简单——你们不需要JavaScript来制作下拉菜单。(你也可以在CSS中制作动画,这些动画适用于现代浏览器,不会破坏旧浏览器。)只需在默认情况下隐藏子菜单,并在悬停在父菜单上方时显示子菜单。

    ul.menu li.menu-item ul.sub-menu{
    display:none;
    }
    ul.menu li.menu-item:hover ul.sub-menu{
    display:block;
    }