您需要确保当您将鼠标悬停在 .item 块上时,会出现 .item__info 块并与下面的块 (.block) 重叠,并带有几个强制性条件
- .wrapper 应该有
position: relative; overflow-x: hidden;
- .item 已设置块高度
style="height: 40px"
.wrapper 是一种滑块,因此会有多个 .items,因此是overflow-x: hidden;
必需的。并且需要高度,以便在悬停在目标上时底层元素不会“跳跃”
.wrapper {
position: relative;
z-index: 0;
overflow-x: hidden;
overflow-y: visible;
width: max-content;
}
.item {
background: red;
width: max-content;
padding: 25px;
}
.item__name {
margin-bottom: 15px;
}
.item__info {
opacity: 0;
visibility: hidden;
height: 0;
display: none;
background: green;
}
.item:hover .item__info {
opacity: 1;
visibility: visible;
height: auto;
display: block;
}
.block {
background: blue;
width: 100px;
margin-top: 5px;
}
<div class="wrapper">
<div class="item" style="height: 40px">
<div class="item__name">Name</div>
<div class="item__info">
<div>123</div>
<div>456</div>
</div>
</div>
</div>
<div class="block">
123123123123
</div>
overflow
唉,由于会“切断”内容的功能,这无法实现。您可以建立一个集体农场,比如说这样的解决方案,但是只要
.item
内部没有计划几个就可以了.wrapper
如果计划好几个,那我们也采用JS。