我想创建一个项目滑块,当我将鼠标悬停在项目上时,模态正好在它上面,它不应该影响页面上的其他内容

Posted

技术标签:

【中文标题】我想创建一个项目滑块,当我将鼠标悬停在项目上时,模态正好在它上面,它不应该影响页面上的其他内容【英文标题】:I want to to create a item slider where, when I hover over the item a modal exactly over it and it should not affect other content on the page 【发布时间】:2021-09-29 03:44:06 【问题描述】:

-请将滑块视为工作滑块,下面的结构只是示例。我不确定在哪里添加,所以我没有提到它。 -modal 将包含与悬停项目相关的信息。

每个项目都有自己的模式。 -我想创建像悬停效果的 NETFLIX。 -我已经观看并尝试了video,它确实有效,但它会影响页面上的其他内容,喜欢它拉下部分的内容。 这是一些 html 代码:
<div class="slider">
  <div class="item">
  </div>
  <div class="item">
  </div>
  <div class="item">
  </div>
  <div class="item">
  </div>
</div>
<div class="slider">
  <div class="item">
  </div>
  <div class="item">
  </div>
  <div class="item">
  </div>
  <div class="item">
  </div>
</div>

这是CSS

.slider
  display:flex;
  justify-content:center;
  margin-bottom:15px;

.item
  height:250px;
  width:250px;
  display:inline-block;
  background-color:#232323;
  margin-right:15px;

.item:last-child
  margin-right:0;

【问题讨论】:

【参考方案1】:

您正在寻找的(如果我理解您的问题)是 CSS 中的 transform 属性。你可以阅读更多关于它的信息here。我还使用了transition 属性使效果动画平滑(您可以阅读here)。

我在下面提供了一个示例。

.slider
  display:flex;
  justify-content:center;
  margin-bottom:15px;

.item
  height:250px;
  width:250px;
  display:inline-block;
  background-color:#232323;
  margin-right:15px;
  
  /* make the transform effect the element smoothly */
  transition: transform 0.15s;

.item:last-child
  margin-right:0;


/* act on element hover */
.item:hover 
  /* scale up the hovered item 1.15x */
  transform: scale(1.15);
<div class="slider">
  <div class="item">
  </div>
  <div class="item">
  </div>
  <div class="item">
  </div>
  <div class="item">
  </div>
</div>
<div class="slider">
  <div class="item">
  </div>
  <div class="item">
  </div>
  <div class="item">
  </div>
  <div class="item">
  </div>
</div>

注意:如果您想避免滚动条出现在元素周围,您可以在项目组的容器上使用overflow: hidden;

【讨论】:

以上是关于我想创建一个项目滑块,当我将鼠标悬停在项目上时,模态正好在它上面,它不应该影响页面上的其他内容的主要内容,如果未能解决你的问题,请参考以下文章

悬停后div项目消失

当我将鼠标悬停在另一个 div 上时,如何使文本出现在一个 div 中?

当我将鼠标悬停在 div 上时,动画应该开始

当我将鼠标悬停在div上时,我希望它根据所悬停的第n个孩子的数量来更改其旁边的元素

当我将鼠标悬停在链接上时希望切换图像

如何在光滑的滑块中创建自定义箭头以在悬停时更改图像?