当我们给 img 指定 width、height 后,图片的尺寸就是该指定尺寸了,但是图片中的内容怎么显示,取决于 object-fit 了。
object-fit:fill;
这是默认值,就是:图片硬生生地拉到指定尺寸。
object-fit:contain;
如原始尺寸大于/小于指定尺寸,则等比例缩小/拉大至:
图片某一边刚好等于指定。
图片另一边小于等于指定。
可以看出:如果图片比例与指定比例不符,则会出现空白区域,该空白区域默认透明,可通过 background 指定为其他颜色。
object-fit:cover;
如原始尺寸大于/小于指定尺寸,则等比例缩小/拉大至:
图片某一边刚好等于指定。
图片另一边大于等于指定。
cover 解决图片等比例完整填充。
object-fit:none;
这个可以理解为 overflow:hidden;,注意是按中心对齐来操作的,并不是按左上角。
object-fit:scale-down;
如原始尺寸大于指定尺寸,则相当于 contain。
如原始尺寸小于指定尺寸,则相当于 none。