一、问题产生的场景
近期在完成项目开发时,测试人员针对漫画长图上传后的展示提出了一个界面优化的点,因为其特点是长,但是我们展示图片的区域是固定的,如果我们按照正常思路将图片的宽高写死,确实占位大小的问题解决了,但是当我们上传一个长图,现在我们会发现这个图片是被拉变形了的,如图1.1所示,这个时候我们想要使图片不因固定宽高而造成变形,就可以使用object-fit:cover来实现这个效果,如图1.2所示,当然该属性的属性值还有其他,下面我们一起来了解一下,当同一张图片使用不同属性值的时候会有什么样的展示效果。
二、object-fit的各个属性的作用
1.contain:被替换的内容将被缩放,以在填充元素的内容框时保持其宽高比。 整个对象在填充盒子的同时保留其长宽比,因此如果宽高比与框的宽高比不匹配,该对象将被添加“留白”
如下图所示:
2.cover:被替换的内容在保持其宽高比的同时填充元素的整个内容框。如果对象的宽高比与内容框不相匹配,该对象将被剪裁以适应内容框
如下图所示:
3.fill:被替换的内容正好填充元素的内容框。整个对象将完全填充此框。如果对象的宽高比与内容框不相匹配,那么该对象将被拉伸以适应内容框
如下图所示:
4.none:被替换的内容将保持其原有的尺寸
如下图所示:
5.scale-down:内容的尺寸与 none 或 contain 中的一个相同,取决于它们两个之间谁得到的对象尺寸会更小一些
如下图所示:
附:element中的image组件有对应的属性设置为fit,其属性值与原生的object-fit的属性值及效果完全相同
文章来源:https://www.toymoban.com/news/detail-666968.html
文章来源地址https://www.toymoban.com/news/detail-666968.html
到了这里,关于图片因固定宽高被拉伸了?object-fit:一个神奇的属性的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!