我使用同位素来布置一些项目。每个项目都包含一个弹出菜单。因为同位素用于translate3d
布局和动画项目的菜单的堆叠顺序我们都搞砸了。后面的项目隐藏了前一个项目的菜单,即使项目有z-index: 1
并且菜单有z-index: 2
。有没有办法解决这个问题?
这是一个显示行为的示例(jsfiddle):
CSS:
.items {
position: relative;
}
.item {
position: absolute;
z-index: 1;
width: 90px;
height: 90px;
background: lightgray;
padding: 5px;
}
.menubutton {
position: relative;
}
.menu {
position: absolute;
z-index: 2;
top: 100%;
left: 0px;
list-style: none;
margin: 0;
padding: 5px;
background: yellow;
}
.menubutton .menu {
display: none;
}
.menubutton:hover .menu {
display: block;
}
HTML:
<div class="items">
<div class="item" style="-webkit-transform: translate3d(10px,10px,0px); transform: translate3d(10px,10px,0px);">
<div class="menubutton">
<div class="label">menu</div>
<ul class="menu">
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
</ul>
</div>
...
</div>
<div class="item" style="-webkit-transform: translate3d(10px,120px,0px); transform: translate3d(10px,120px,0px);">
<div class="menubutton">
<div class="label">menu</div>
<ul class="menu">
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
<li>menu item</li>
</ul>
</div>
...
</div>
</div>