当前位置: 首页 > 知识库问答 >
问题:

有没有可能在一个固定高度的菜单上创建一个纯CSS子菜单?

燕俊明
2023-03-14

我有一个垂直菜单,其中一些项目有一个子菜单出现在该项目的右边。这是大部分工作良好,但主菜单可能有一大堆项目在它,所以我想要一个最大高度与垂直滚动条在它。

问题是,如果我在主菜单上设置了overflow:auto,那么子菜单就不再正确显示,因为它无法溢出主菜单宽度。

下面是我的代码,其中有一个示例,网址是http://jsfidle.net/fk8p6/。如果您从.menu类中删除overflow:auto,那么您可以看到子菜单正常工作,但当然主菜单不再正确显示,那么。

<ul class="menu">
    <li>Menu 1</li>
    <li>Menu 2</li>
    <li>Menu 3</li>
    <li>Menu 4</li>
    <li>Menu 5</li>
    <li>
        Menu 6
        <ul class="menu submenu">
            <li>SubMenu 1</li>
            <li>SubMenu 2</li>
            <li>SubMenu 3</li>
        </ul>
    </li>
</ul>
.menu
{
    padding: 5px;
    list-style-type: none;
    background-color: #99f;
    max-height: 80px;
    width: 100px;
    overflow: auto;
}

.menu li
{
    border: #ddd 1px solid;
    position: relative;
    line-height: 24px;
    cursor: default;
}

.menu li:hover
{
    background-color: #d1e7ff;
}

.submenu
{
    max-height: none;
    background-color: #fff;
    padding: 0;
    position: absolute;
    top: -1px;
    left: 100%;
    display: none;
}

.menu li:hover .submenu
{
    display: block;
}

我知道我可以在heirarchy中将子菜单拉到主菜单之外,然后使用javascript来定位它。但是,我失去了纯CSS菜单,它也不再是语义菜单。如果有必要的话,我可以接受,但如果可能的话,我想找到一个更好的解决办法。

共有1个答案

艾灿
2023-03-14

你看过这个教程吗?我不认为固定高度导航栏有什么问题...

http://www.devinrolsen.com/pure-css-horizonal-menu/

哦该死-垂直菜单?可能这也于事无补。

 类似资料:
  • 首先,我只能使用HTML和/或CSS。我没有能力使用PHP或JavaScript? 我研究了一个iFrame,但我不确定是否有可能有一个带有iFrame的下拉菜单?

  • 我的服务器太基础,不支持PHP/JAVASCRIPT,有什么建议吗? 我有一个多页的超文本标记语言网站。我在所有页面上使用相同的菜单,当我添加一个页面时,我必须每个页面并编辑代码。 我想知道是否有一种方法可以添加一个菜单页面,可以调用? 我正在使用CSS/超文本标记语言是否有可能做任何事情来帮助?我已经研究了一点,我认为它涉及到PHP,但是PHP可以与CSS/超文本标记语言结合使用吗?

  • 就像窗口模板,在一个ui file 中我们指定了我们的应用程序菜单,然后作为资源向二进制文件中添加。 <?xml version="1.0"?> <interface> <!-- interface-requires gtk+ 3.0 --> <menu id="appmenu"> <section> <item> <attribute name="la

  • 我试图创建一个简单的菜单,其中一个按钮将调用一个方法来清除数组。我不想使用xml,因为我只需要一个按钮。 像这样的东西- 非常感谢。

  • 问题内容: AFAIK,Python中没有curses菜单扩展,因此您必须推出自己的解决方案。我知道这个补丁http://bugs.python.org/issue1723038,但我不知道它的当前状态是什么。我在http://www.promisc.org/blog/?p=33上找到了一个很好的Python类,用于包装我想要的“ cmenu”,但我对此也有疑问。我想制作一个菜单,用户可以选择一个

  • 本文向大家介绍外层有一个自适应高度的div,里面有两个div,一个高度固定300px,另一个怎么填满剩余的高度?相关面试题,主要包含被问及外层有一个自适应高度的div,里面有两个div,一个高度固定300px,另一个怎么填满剩余的高度?时的应答技巧和注意事项,需要的朋友参考一下 可以设置外层自适应高度的容器为布局,利用属性即可实现自动填满剩余高度;代码如下: 在线demo