我有两个div:
back
具有背景图像front
有一个透明的背景图像放在顶部。
我想使用封面,并在中间的位置,使图像削减/增长双方平等。html和css看起来像这样:
.back{
background-image: url('https://i.ibb.co/W5rb9Mp/358-1676542377653745.png');
background-position: 50% 50%;
background-size: cover;
width: 100%;
height: 100%;
position: absolute;
z-index: 1;
}
.front{
background-image: url('https://i.ibb.co/NtXq0Sv/297-1676449694919336.png');
background-position: 50% 50%;
background-size: cover;
width: 100%;
height: 100%;
position: absolute;
z-index: 2;
}
<div class="back">
<div class="front">
</div>
</div>
请注意,这是一个简化的版本。在应用程序中,这个分层的图像将在一个容器中。
这是正确的,这完全是我想要的。然而,正如你所看到的,水龙头不适合Flume的位置,所以我想添加一个偏移到顶部的图像,使其匹配。x1c 0d1x
我尝试了很多不同的方法,比如添加background-position: 50% calc(50% + 40px);
或填充和边距。但问题是,当窗口大小改变时,我无法将front
图像保持在正确的位置。
如果有一个解决这个问题的方案,只依赖于CSS,但使用JS的其他选项也可以工作,这将是伟大的。如果可能的话,我不想使用画布,因为这将使事情变得非常复杂。
注意:我知道最简单的解决方案是编辑front
图像并重新上传,但问题是我正在开发的应用程序具有不同高度的Flume,因此需要动态纠正。
2条答案
按热度按时间kb5ga3dv1#
根据所了解的是,您需要设置轻触表,如图所示是第二个图像(右侧)
这里是CSS解决方案,在你的代码中只有一个轻微的变化:
它在全屏工作真的很好。你可以检查如果高度95/94为你工作。让我知道如果我已经正确理解你的问题或没有谢谢。
w8ntj3qf2#
一些快速修复和使用Bootstrap框架的建议:
请复制并在您的系统上运行此代码,我测试了响应性,以及使用开发工具在我的边缘浏览器
只是如果你放大缩小,那么它会有一点不同
在您的系统中尝试,而不是在此代码段中尝试