【发布时间】:2019-08-05 18:39:53
【问题描述】:
我有一个绝对定位的图像。图像具有应始终与图像大小相同的叠加层。
请注意,图像是响应式的。意思是,如果用户调整窗口大小,图像的长度和/或高度会增加。覆盖层必须做出相应的反应。
我面临的问题是,例如,如果用户增加浏览器的宽度,则叠加层会根据图像增加高度,但是,图像也会增加高度,以免创建混乱的图片。尽管用户只增加了浏览器的宽度,但图像的增加会在叠加层和图像之间产生大小差异。
问题的 Gif:https://gyazo.com/e90fd418df20a622712b73422d1022b8
我应该如何解决这个问题?
这是我的一个非常糟糕的方法:
基本上我有一个 div#img-wrapper 包含 img 和覆盖。 overlay 和 image 应该与 div#img-wrapper 保持相同的大小。
#img-wrapper {
box-sizing: border-box;
position: relative;
left: 35%;
top: 55%;
background: yellow;
width: 50%;
}
img {
border: 1px solid black;
vertical-align: middle;
width: 100%;
z-index: 55;
opacity: 0.2;
}
<div style="width: 50%; height: 500px; border: 1px solid black;">
<div id="img-wrapper">
<img src="https://s3.amazonaws.com/cdn-origin-etr.akc.org/wp-content/uploads/2017/11/12225358/Pug-On-White-01.jpg" alt="">
</div>
</div>
【问题讨论】:
-
你必须出示你的代码
-
我的代码错了,不难意识到我的代码不起作用,我需要以不同的方式解决这个问题。你还认为我应该展示它吗?
-
是的,请发布代码。或者,甚至是一个简单的 codepen/jsfiddle 来演示您面临的问题。它有助于了解需求以及您迄今为止所做的工作。
-
也许你的做法没有错,很容易改正,不表现出来就不好说了。
标签: javascript html css