试图在将鼠标悬停在图像上时实现变暗的叠加层(带有文本)。它有效,但我在变暗的图像上方得到了一些额外的空间(参见:/image/y7hpM.png)。
对我做错了什么有帮助吗?
我是一名尝试将其应用于 WordPress 网站(主题:Snaps)的初学者。因此,非常感谢 WordPress CSS 编辑器的浏览器版本中的解决方法!
/* Main container */
.overlay-image {
position: relative;
width: 100%;
}
/* Original image */
.overlay-image .image {
display: block;
width: 100%;
height: auto;
}
/* Original text overlay */
.overlay-image .text {
color: #fff;
font-size: 30px;
line-height: 1.5em;
text-shadow: 2px 2px 2px #000;
text-align: center;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 100%;
}
/* Overlay on hover */
/* New overlay on hover */
.overlay-image .hover {
position: absolute;
top: 0;
height: 100%;
width: 100%;
opacity: 0;
transition: .5s ease;
}
/* New overlay appearance on hover */
.overlay-image:hover .hover {
opacity: 1;
}
/* Background and text only overlay on hover */
.overlay-image .normal {
transition: .5s ease;
}
.overlay-image:hover .normal {
opacity: 0;
}
.overlay-image .hover {
background-color: rgba(0, 0, 0, 0.5);
}
<div class="overlay-image">
<a href="LINK_URL">
<img class="image" src="https://i.imgur.com/tyPnKUE.png" alt="Alt text" />
<div class="normal">
<div class="text">Image + text ORIGINAL
</div>
</div>
<div class="hover">
<div class="text">Background + text HOVER
</div>
</div>
</a>
</div>
HTML 和 CSS 来源:https://pavenum.com/en/images-and-text-overlays-in-html-css/
最佳答案
尝试添加:
font-size: 0;
到父元素
关于html - 悬停时变暗的叠加层比图像大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52310184/