【发布时间】:2018-03-29 00:34:17
【问题描述】:
图片尺寸有3种情况:
image width > image heightimage width < image heightimage width == image height
我需要使用img 来显示div 内的图像。
<div class="container">
...
<img class="scale-and-fill" src="..." />
...
</div>
如何:
- 如果图像的两个尺寸都小于容器,则在保持比例的同时将其放大,并让较短的尺寸与容器的尺寸相匹配。
- 如果图像的两个尺寸都大于容器,则在保持比例的同时将其缩小,让较短的尺寸与容器的尺寸相匹配。
- 如果图像的一个尺寸大于容器,而另一个尺寸小于容器,则放大较小的尺寸以匹配容器尺寸,并裁剪溢出图像的剩余部分。
在下面的 CSS 类中应该输入什么?
.container {
...
}
.scale-and-fill {
...
}
更新
包括截图以清楚地说明我的问题。
【问题讨论】:
-
如果将其缩放到超过其原始大小,则无法保持该比例。
-
我的意思是宽高比。
-
只能维护一个
height或width -
是 img 的委托人吗?设置 div 背景还不够?在这种情况下,您可以使用封面 - 包含属性
-
如果你根本不能使用 javascript,它看起来很难。因为我不认为在 css 中你可以检查 img 的纵横比。