javascript - 如何悬停一个 div 并使其背景图像慢慢消失而不影响其中的内容?

标签 javascript jquery html css

我有一个带有背景颜色、背景图像和一些文本的 div。我希望,当我将鼠标悬停在 div 上时,背景图像会慢慢消失,就像过渡效果或其他东西一样,但文本和颜色仍然在 div 中可见。我对任何类型的方法都持开放态度。

This is how the div should look before hover

This is how it's supposed to be while hovering

最佳答案

您可以仅使用添加一些 DOM 元素的 CSS 轻松地做到这一点。

.fadebg {
  position: relative;
  height: 100px;
  width: 100px;
  background-color: red;
}
.fadebg:hover .img, .fadebg:hover img {
    opacity: 0;
}

.text {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  color: white;
  z-index: 1;
}

.img {
    background-repeat: no-repeat;
  background-image: url(https://upload.wikimedia.org/wikipedia/en/b/bc/Screenshot_Snarf.jpg);
  background-size: 100px 100px;
}

.img, img {
  opacity: 1;
  height: 100px;
  width: 100px;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  overflow: hidden;
  -webkit-transition: 1s all;
  -moz-transition: 1s all;
  -ms-transition: 1s all;
  -o-transition: 1s all;
  transition: 1s all;
}
<div class="fadebg">
    <div class="text">Hi</div>
    <div class="img"></div>
</div>
<br>
<div class="fadebg">
    <div class="text">Hi</div>
    <img src="https://upload.wikimedia.org/wikipedia/en/b/bc/Screenshot_Snarf.jpg">
</div>

关于javascript - 如何悬停一个 div 并使其背景图像慢慢消失而不影响其中的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44444450/

相关文章:

将 keyCodes 转换为字符的 JavaScript 函数

javascript - 如何让mocha使用http响应?

javascript - jquery ui日期范围两个日期之间15天

javascript - 使用 react 更改缩放/缩放后,svg在窗口调整大小上定位

javascript - 如何设置 socket.io 来源以限制连接到一个 url

javascript - 为什么 CSS matrix3d 比 CSS position 渲染得更快?

javascript - 检查 chrome 插件中的按钮是否启用

jquery - 未捕获的类型错误 : Object [object Object] has no method 'autocomplete'

javascript - 如何: radio button changing opacity of image

javascript - 使用图像滚动达到页面中的最大内容然后应该使用窗口百分比隐藏图像