gpt4 book ai didi

html - 负 z-index 元素出现在包含元素的背景之上

转载 作者:行者123 更新时间:2023-11-28 02:11:41 26 4
gpt4 key购买 nike

我正在尝试制作一个 CSS3 动画菜单,但我遇到了一个问题,即低索引元素出现在包含元素的顶部,这破坏了“滑出”效果。

HTML 是:

<html>
<head><title>CSS3 Experiments</title></head>
<body class="menu-metal effect-hovermenu">
<div id="main">
<div id="container">
<ul>
<li>
<div class="name"><span>Effect: Hover Menu</span></div>
<div class="short"><span>Display menu on hover</span></div>
<div class="long"><span>A CSS3-transition enabled hover menu based on the design at http://www.webdesignerwall.com/demo/css3-dropdown-menu/ .</span></div>
</li>
</ul>
</div>
</div>
</body>
</html>

压缩的相关 CSS 是

.effect-hovermenu #container li {
overflow: visible;
z-index: 5;
position: relative;
}
.effect-hovermenu #container li .short {
position: absolute;
width: 100%;
left: 0%;
top: 5px;
z-index: -1000;
opacity: 1 !important;
color: black;
transition-property: all;
transition-duration: 150ms;
transition-timing-function: ease-in;
visibility: hidden;
}
.effect-hovermenu #container li:hover .short {
left: 110%;
visibility: visible;
}

此问题的工作演示可在 http://jsfiddle.net/scottrabin/FxZrz/ 获得。 .我试过在多个元素上设置 position 属性,修改 z-index 值,overflow,最后意识到我在拍摄一片漆黑,离答案越来越近。

特别是,将鼠标悬停在元素上会产生不良影响;在过渡期间,文本切换为 visibility: visible;,并立即呈现在按钮元素之上。理想的行为是让元素呈现在 ul 下方,因此它看起来像是从菜单“后面”滑出。

最佳答案

当您在元素中设置 z-index 时,您正在创建一个堆叠上下文。元素中的每个元素现在都是他的堆叠上下文的一部分,不能出现在它下面。默认情况下,所有元素都是 root 堆栈上下文的一部分。

This documentation可能会帮助您解决问题。

关于html - 负 z-index 元素出现在包含元素的背景之上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7962195/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com