【发布时间】:2020-01-01 10:23:37
【问题描述】:
我希望能够将鼠标悬停在或单击网格单元格并显示隐藏元素(如页脚)并与其他网格项重叠,而不会影响整体网格布局。
我知道在这个例子中可以重叠单元格-
但如示例所示,列和行是预先设置的。有没有办法在动态添加项目时选择一个网格项目以更改它的z-index?
网格项目是使用自动调整添加的。我可以通过添加这样的类来跨越多行-
$(document).on('click', '.card-footer', function () {
$(this).closest('.card').toggleClass('row-span');
});
.row-span {
grid-row: span 2;
/*z-index: 1; doesn't work*/
/*footer:nth-child(4) { z-index: 1; } doesn't work */
}
html是通过ajax调用动态创建的,每张图片都添加到cards类中类似的模板-
</div class="cards">
<div class="card bg-light" id='${image.id}'>
<div class="card-header">${image.header}</div>
<div class="card-body">${image.body}</div>
<div class="card-footer">${image.footer}</div>
</div>
css-
.cards {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(125px, .25fr));
grid-gap: 1rem;
align-items: start;
width: 100vw;
padding-right: 6px;
}
当我将这个类添加到一个元素时,我只能让那个网格项跨越多行,但这仍然会影响其他网格项。我不明白为什么我不能更改 z-index 以与另一个 grid-items 重叠,但我可以更改 grid-row: span value。
【问题讨论】:
-
提供您的 HTML 代码或提供小提琴。
-
能否为您的问题创建一个 sn-p?
-
我希望附加代码sn-ps对您有所帮助。如果我无法得到满意的答案,我会创建一个小提琴。