html - 以最大高度显示图像而不进行裁剪或拉伸等
问题描述
我有一个图像(我不知道它的宽度/高度——>从数据库加载),它应该延伸到整个容器宽度(见圆角)。我很好地解决了这个问题。但特别是对于肖像图像,它们有时会变得太大,因此我想应用最大高度。我怎样才能做到这一点?
当前代码没有最大高度(否则效果很好)
.avatar-box {
position: relative;
overflow: hidden;
border-radius: 10px;
}
.avatar-thumb-square2 {
overflow: hidden;
position: relative;
}
.avatar-thumb-square2 .avatar-image {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 100%;
}
<div class="avatar-box" data-controller="responsive-image">
<div class="avatar-thumb-square2">
<img class="avatar-image" src="https://www.alten.com/wp-content/uploads/2021/05/satellite-donnees-oceanographiques.jpg">
</div>
</div>
但是正如你所看到的,图像在垂直方向上太大了,因此我想应用一个最大高度。例如,如何将图像大小限制为最大 400 像素。只需应用最大高度,图像就会被裁剪。见样品
那么我怎样才能显示完整的图像(如果它没有拉伸 100% 则居中)并保持圆角?我可以使用 JavaScript。
解决方案
.avatar-thumb-square2 .avatar-image {
width: 100%;
object-fit: cover;
height: 300px;
border-radius: 10px;
}
.avatar-thumb-square2{
width:30%;
}
<div class="avatar-box" data-controller="responsive-image">
<div class="avatar-thumb-square2" data-responsive-image-target="wrapper">
<img class="avatar-image" src="https://www.alten.com/wp-content/uploads/2021/05/satellite-donnees-oceanographiques.jpg">
</div>
</div>
推荐阅读
- reactjs - 我安装 react-leaflet-search 时的问题
- javascript - 在 react native 中每 3 行后显示广告,undefined 不是 react native 中的对象(评估 'item[0].type')
- kubernetes - 如何在本地开发环境中使用 Ingress 公开 k8s 集群?
- makefile - Makefile:如何删除包含 $ 的文件
- python - Python中的字母列表
- postgresql - PostgreSQL ON CONFLICT 列引用不明确,但如何指定表列?
- java - 为什么 Springboot Transaction 中的隔离级别 REPEATABLE_READ 和 SERIALIZABLE 允许并发读取而不是顺序读取?
- python - 如何获取 NumPy 数组的所有索引,但不是 np.indices() 提供的格式
- node.js - 如何在 react 和 node 应用程序中获取我的帖子的 url 作为字符串?
- go - LogFile is not created