CSS:UL带位置:绝对以显示容器外部,位置:固定,溢出:隐藏

CSS:UL带位置:绝对以显示容器外部,位置:固定,溢出:隐藏,css,overflow,css-position,Css,Overflow,Css Position,我的问题类似于 我有一个很长的垂直菜单,在悬停时显示一个子菜单。 我想使菜单在我的页面上固定和100%的高度,并使用滚动条滚动菜单项。 我将使用jquery显示需要父容器具有overflow:hidden的滚动条 问题是,如果子菜单具有overflow:hidden,则子菜单将不会显示在父容器上。 Html代码: <div class="scrollable"> <ul class="menu"> <li>Menu <ul cla

我的问题类似于

我有一个很长的垂直菜单,在悬停时显示一个子菜单。 我想使菜单在我的页面上固定和100%的高度,并使用滚动条滚动菜单项。 我将使用jquery显示需要父容器具有overflow:hidden的滚动条

问题是,如果子菜单具有overflow:hidden,则子菜单将不会显示在父容器上。 Html代码:

<div class="scrollable">
<ul class="menu">
    <li>Menu
        <ul class="submenu">
            <li>Submenu</li>
            <li>Submenu</li>
            <li>Submenu</li>
        </ul>                   
    </li>
    <li>Menu
        <ul class="submenu">
            <li>Submenu</li>
            <li>Submenu</li>
            <li>Submenu</li>
        </ul>                   
    </li>
    <li>Menu
        <ul class="submenu">
            <li>Submenu</li>
        </ul>                   
    </li>
    <li>Menu
        <ul class="submenu">
            <li>Submenu</li>
            <li>Submenu</li>
            <li>Submenu</li>
        </ul>                   
    </li>
    <li>Menu
        <ul class="submenu">
            <li>Submenu</li>
            <li>Submenu</li>
            <li>Submenu</li>
        </ul>                   
    </li>
</ul>
我这里有一个条带化html和css的示例


是否有办法在容器上方显示溢出:隐藏的子菜单?

请检查此并告诉我这是您要查找的内容

css

ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.scrollable {
    position: fxied;
    top: 0;
    left: 0;
    overflow: hidden;
    width: 100px;
    height: 100px;
    border: 1px solid #ff0000;
    padding: 10px;
}
ul.menu > li {
    color: #ff0000;
}
li {
    background-color: #dddddd;
    line-height: 50px;
    height: 50px;
    border-bottom: 1px solid #fff;
    display: block;
}
.submenu {
    width: 200px;
    display:none;
    margin: -45px 0 0 70px;
    border: 1px solid #000;
    position: absolute;
    z-index: 100;
}
.menu li:hover .submenu {
    display: block;
}

如果你删除position:absolute from.scrollable,你可以这样做。这是我首先需要做的,以保持整个菜单不变。它很接近,但还有一个问题,我需要有一个要滚动的容器。在您的情况下,ul将有一个卷轴在里面。当我向下滚动菜单列表并将鼠标放在菜单项上时,我猜子菜单将一直向下,因为它保持了以前的滚动位置。我对小提琴做了一些更新:。向下滚动菜单项并将其悬停在菜单上以查看发生了什么。
ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.scrollable {
    position: fxied;
    top: 0;
    left: 0;
    overflow: hidden;
    width: 100px;
    height: 100px;
    border: 1px solid #ff0000;
    padding: 10px;
}
ul.menu > li {
    color: #ff0000;
}
li {
    background-color: #dddddd;
    line-height: 50px;
    height: 50px;
    border-bottom: 1px solid #fff;
    display: block;
}
.submenu {
    width: 200px;
    display:none;
    margin: -45px 0 0 70px;
    border: 1px solid #000;
    position: absolute;
    z-index: 100;
}
.menu li:hover .submenu {
    display: block;
}