gpt4 book ai didi

html - 混合模式图层超出图像边界

转载 作者:太空宇宙 更新时间:2023-11-03 21:18:06 24 4
gpt4 key购买 nike

所以我使用了 mix-blend-mode: multiply;悬停时在我的图像顶部创建一个多层的效果。问题是图层超出了图像边界,如下图所示。我尝试将宽度和高度设置为 .imgcon 和 .imgcon > img(请参阅下面的代码)并且图层适合,但是当在不同的屏幕分辨率下查看时它会弄乱响应式 Web 功能。所以我尝试将宽度和高度设置为 100% 以保持响应功能,但图层仍然超出图像边界。

As you can see, the multiply layer bleeds out of the image

这是我的代码:

.imgwrapper {
position: relative;
}



.imgcon + div {
position: absolute;
left: 42%;
top: 44%;
color: white;
text-decoration: underline;
opacity:0;
display: block;
pointer-events: none;
font-size: 18px;

letter-spacing: 4px;

}

.imgcon {
position: relative;
background: rgba(209, 19, 15, 0);
transition: ease 0s;
-webkit-transition: ease 0s;
-moz-transition: ease 0s;
-ms-transition: ease 0s;
-o-transition: ease 0s;
mix-blend-mode: multiply;
}
.imgcon > img {
transition: ease 0s;
-webkit-transition: ease 0s;
-moz-transition: ease 0s;
-ms-transition: ease 0s;
-o-transition: ease 0s;
}
.imgcon:hover {
background: #b41f24;
background: rgba(180, 31, 36, 0.85);


}
.imgcon:hover > img {
z-index: -1;
-webkit-filter: grayscale(100%) blur(1.5px) contrast(100%);
filter: grayscale(100%) blur(1.5px) contrast(100%) ;
mix-blend-mode: multiply;

}

.imgcon:hover + div {
display: block;
opacity: 1;
z-index: 1;
}
<a href="works.html?option=emkoinvite" class="permalink">
<div class="desktop-3 mobile-half columns">
<div class="item first-row">
<h3>EmKO invitation</h3>
<span class="category">Identity, print</span>

<div class="imgwrapper">
<div class="imgcon">
<img src="http://i.imgur.com/XmhcxJS.png" /></div>
<div id="view">view</div></div>
</div><!-- // .item -->
</div><!-- // .desktop-3 -->
</a>

最佳答案

这是您的解决方案。解释一下,任何 block 元素在默认情况下都是其父元素的 100% 宽度。如果您希望元素保持其容器的宽度,则需要使用不同的 display 属性; inline-block 似乎在这里最有意义。

底部增加的空间是很多元素都有的东西,我称之为下行空间。某些字母,如“g”和 j”,会下沉到文本行下方。下沉的部分称为下降部分。许多元素为下降部分留出一点空间。要摆脱这个空间,您可以设置 line-height 到 0。

文本的宽度和居中只是让我更容易将文本正确居中的方法。

如果您有任何其他问题,请告诉我!

.imgwrapper {
position: relative;
}



.imgcon + div {
position: absolute;
text-align: center;
top: 42%;
width: 256px;
color: white;
text-decoration: underline;
opacity:0;
display: block;
pointer-events: none;
font-size: 18px;

letter-spacing: 4px;

}

.imgcon {
position: relative;
display: inline-block;
line-height: 0;
background: rgba(209, 19, 15, 0);
transition: ease 0s;
-webkit-transition: ease 0s;
-moz-transition: ease 0s;
-ms-transition: ease 0s;
-o-transition: ease 0s;
mix-blend-mode: multiply;
}
.imgcon > img {
transition: ease 0s;
-webkit-transition: ease 0s;
-moz-transition: ease 0s;
-ms-transition: ease 0s;
-o-transition: ease 0s;
}
.imgcon:hover {
background: #b41f24;
background: rgba(180, 31, 36, 0.85);


}
.imgcon:hover > img {
z-index: -1;
-webkit-filter: grayscale(100%) blur(1.5px) contrast(100%);
filter: grayscale(100%) blur(1.5px) contrast(100%) ;
mix-blend-mode: multiply;

}

.imgcon:hover + div {
display: block;
opacity: 1;
z-index: 1;
}
<a href="works.html?option=emkoinvite" class="permalink">
<div class="desktop-3 mobile-half columns">
<div class="item first-row">
<h3>EmKO invitation</h3>
<span class="category">Identity, print</span>

<div class="imgwrapper">
<div class="imgcon">
<img src="http://i.imgur.com/XmhcxJS.png" /></div>
<div id="view">view</div></div>
</div><!-- // .item -->
</div><!-- // .desktop-3 -->
</a>

关于html - 混合模式图层超出图像边界,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40100543/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com