V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Can I use?
http://caniuse.com/
Less
http://lesscss.org
Cool Libraries
Bootstrap from Twitter
Jetstrap
Tiny
V2EX  ›  CSS

请教一个菜单栏CSS的问题

  •  
  •   Tiny · 2013-03-25 16:33:26 +08:00 · 4235 次点击
    这是一个创建于 4288 天前的主题,其中的信息可能已经有所发展或是发生改变。
    菜单栏移入的时候会显示二级菜单,移出的时候会隐藏二级菜单
    如图

    浮动的DIV 是absolute,移入移出的时候计算得出他的位置,问题就在这里,在滚动条滚动的时候这个浮动的DIV是不会跟随滚动条移动的。在IE8下面鼠标移入浮动DIV滚动鼠标,浮动的DIV不消失,下面的菜单继续在滚动。我觉得是我思路有问题,请问一下这种类似的效果有什么更合理的解决办法吗?

    谢谢。
    10 条回复    1970-01-01 08:00:00 +08:00
    Julyyq
        1
    Julyyq  
       2013-03-25 16:48:58 +08:00
    LZ随便打开哪个网站,看下源码看看别人是怎么搞得嘛
    momou
        2
    momou  
       2013-03-25 16:50:12 +08:00   ❤️ 1
    上层没有relative?
    Tiny
        3
    Tiny  
    OP
       2013-03-25 17:13:03 +08:00
    @moumou 加了relative没生效 重新写了个DEMO可以。。 应该是我HTML结构没写好
    Tiny
        4
    Tiny  
    OP
       2013-03-25 17:16:08 +08:00
    @Julyyq 回复之前看一下回复按钮右手边的提示,如果你能“随便”打开哪个网站找到类似的例子的话,请随便贴个链接,我会非常感激。
    rephaslife
        5
    rephaslife  
       2013-03-25 18:03:16 +08:00
    增加一个fixed的框,自己弄到想要的位置。然后里面按顺序上一级菜单,在每个一级菜单的下面加上display:none的二级菜单。然后在每个一级菜单的相应事件里把对应二级菜单显示/隐藏。
    这样二级菜单自然会把下面的内容挤出去。只要不要弄position或float就行了。

    此方案是否可行?
    Tiny
        6
    Tiny  
    OP
       2013-03-25 21:31:46 +08:00
    @rephaslife 这个要浮在上面的 不能挤开下面的元素
    rephaslife
        7
    rephaslife  
       2013-03-25 21:37:40 +08:00
    @Tiny display:relative;z-index:250;
    liyandong
        8
    liyandong  
       2013-03-26 19:18:51 +08:00
    纯CSS有兼容各个浏览器的好办法么?
    Kaiyuan
        9
    Kaiyuan  
       2013-03-26 19:59:03 +08:00   ❤️ 1
    @Tiny 这样的二级菜单一般都用 ul>li>ul>li的结构,真的是随便都能找到一个类似的,看起来不同,代码是一样的.只是 IE6 不能纯 css 完成.
    第一层菜单先设置releative,子菜单设置absolute,之后定位就好了.
    ui li {position:relative;}
    ul li ul {position:absolute;dispaly:none;top:0;left:100%;}
    ul li:hover ul {dispaly:block}
    不用定z-index. IE6 不支持:hover,需要jquery实现,js太麻烦,jquery直接一句代码可以.
    Tiny
        10
    Tiny  
    OP
       2013-03-27 09:38:08 +08:00
    谢谢@Kaiyuan 自己已经鼓捣出来了 用的Jquery 实现和你的差不多 ,其实这里是三级菜单,HTML结构我刚开始没弄好 ,怎么都不行 改了之后就好了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2588 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 04:20 · PVG 12:20 · LAX 20:20 · JFK 23:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.