CSS 模块和悬停 css 无法正常工作

CSS Modules and hover css not working properly

我使用自定义构建创建了 React 网络应用程序——一切都是从头开始构建的:webpack、webpack-server、typescript、image-loaders、css、scss、css -模块。 我对 CSS 伪元素有疑问。悬停无法正常工作。

 .image {
  height: auto;
  width: auto;
  z-index: 10;
}

.image:hover{
  visibility: hidden !important;
}

link 实时预览 https://5c1a4a2b9db5a37380b6ebf0--practical-archimedes-b4d9da.netlify.com/

我不确定发生了什么。我很想听听您的一些专业建议。

您可以试试这个代码来解决问题

.image {
  height: auto;
  width: auto;
  z-index: 10;
}

   &:hover{
     visibility: hidden !important;
   }

这是按预期工作的,这与 css-modulesreact 无关,这就是 CSS 的工作方式。

当元素处于 hidden 时,它 "loses" 悬停状态,因此它切换回 visiblevisibility 的初始值)然后再次捕获悬停事件等等。这就是它闪烁的原因。

你能做的就是到达 opacity:0:

.image:hover{
  opacity:0;
}

差异示例:

.wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
}

.box {
  background-color: #333;
  color: #fff;
  flex: 1;
  margin: 15px;
  height: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.opacity:hover {
  opacity: 0;
}

.hidden:hover {
  visibility: hidden;
}
<div class="wrapper">
  <div class=" box opacity ">Opacity</div>
  <div class="box hidden ">Visibility</div>
</div>