我有一个 flexbox 容器,我试图在其中并排显示两个带有阴影的图像。即使图像大小不同,我也希望它们占据相同数量的水平空间。我正在使用样式为“display:flex”的容器,并为图像使用“object-fit:contain”以使其缩放。如果我不给容器一个特定的高度,我的代码就可以工作。如果我给容器一个特定的高度,例如 300 像素,图像会按比例缩小,但阴影会出现在距图像边缘一定距离的地方,就好像有一个盒子包裹着它们一样。这似乎是奇怪的行为。谁能解释这种看起来很奇怪的行为,有没有办法可以给容器一个高度并且仍然让它工作?
小提琴来说明:https ://jsfiddle.net/Lej1a6vp/
html:
<div class="container">
<img class="image" src="http://via.placeholder.com/300x400" />
<img class="image" src="http://via.placeholder.com/400x300" />
</div>
CSS:
.container {
display: flex;
margin: 1em auto 3em auto;
width: 500px;
height: 200px;
justify-content: center;
align-items: center;
}
img {
box-shadow: 8px -8px 10px #00000080;
height: 100%;
width: 40%;
margin-left: 1em;
object-fit: contain;
}