【发布时间】:2018-08-16 23:23:24
【问题描述】:
我正在构建一个带有关闭按钮的图像灯箱。图像应缩放到其默认大小,直到达到最大 90% 的页面宽度/高度。 这适用于小于最大值的图像,上面的任何内容都会溢出容器 div。
这是我的代码笔示例: https://codepen.io/gempir/pen/eMYmyx
如何强制图片缩放?
设置
img {
max-height: 100%;
max-width: 100%;
}
没有帮助,因为父 div 没有固定宽度。除了使用 JS 即时计算之外,任何想法如何正确处理这种情况。
.image-overlay {
display: flex;
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.25);
text-align: center;
user-select: none;
justify-content: center;
align-items: center;
}
.image-overlay .image-container {
display: inline-block;
position: relative;
max-width: 90% !important;
max-height: 90% !important;
background: blue;
}
.image-overlay .image-container .close {
position: absolute;
top: 5px;
right: 5px;
color: white;
background: rgba(0, 0, 0, 0.5);
padding: 5px;
}
.image-overlay .image-container img {
display: block;
max-height: 100%;
max-width: 100%;
}
<div class="image-overlay">
<div class="image-container">
<img src="https://picsum.photos/g/1800/1800">
<div class="close">close</div>
</div>
</div>
【问题讨论】: