悬停时颜色透明覆盖

ncu*_*uda 3 css overlay colors hover

在我的个人网站上工作时,我有一些图像,将鼠标悬停在上面时,我想要一个有点透明的深红色覆盖层。到目前为止,我使用webkit所能找到的就是改变照片的亮度,饱和度或色调。

我可能会补充说,这些功能仅在将它们指定给“ img”之类的标签时才起作用,而不适用于“ class”或“ id”。

任何帮助都会很棒。

这是我的代码:

html

<div>
<img src="images/amadea/book.jpg" alt="Amadea Bailey- Abstract Expressionist">
</div>
Run Code Online (Sandbox Code Playgroud)

的CSS

img{
    display: block;
}

img:hover{
    -webkit-filter:  grayscale(100%) brightness(51%);
}
Run Code Online (Sandbox Code Playgroud)

Jos*_*ier 5

您可以使用:after相对于父div元素绝对定位的伪元素。伪元素与父元素的大小相同,因此适用于所有img尺寸。它基本上只是在上添加透明的覆盖层:hover,从而实现您要查找的“过滤器”。您可以使用任何背景色,自定义透明度,甚至添加内容。

这里的例子

div {
    position:relative;
    display:inline-block;
}
div:hover:after {
    content:"\A";
    width:100%;
    height:100%;
    background:rgba(255, 0, 0, 0.5);
    position:absolute;
    top:0;
    left:0;
} 
Run Code Online (Sandbox Code Playgroud)

  • +1,删除了我的答案...在我发布后意识到 (2认同)