OR博客
img图片被压缩变形解决方案CSS
苗锦洲
创建于:2020-11-28 08:59:41
0
31
319
0
在做项目的时候经常遇到这样一个问题, 就是一张图片宽度100% 在缩放屏幕的时候图片会被压缩变形!!!

在做项目的时候经常遇到这样一个问题, 就是一张图片宽度 100% 在缩放屏幕的时候图片会被压缩变形!!!

原文链接:https://www.cnblogs.com/lyt0207/p/13048997.html

问题描述

在做项目的时候经常遇到这样一个问题,就是一张图片宽度 100% 在缩放屏幕的时候图片会被压缩变形!!!如下:

在大屏幕上:

在小屏幕上:

小屏幕上压缩变形,很丑陋,给人一种很不专业的感觉的。

解决办法:

为了避免变形,我们可以使用 CSS 中 object-fit 属性

html:

<div class="swiper-slide"> <img src="images/background@3x.png" alt=""> </div> <div class="swiper-slide"> <img src="images/IMG_3393.JPG" alt=""> </div> <div class="swiper-slide"> <img src="images/99.jpg" alt=""> </div>

css:

.swiper-slide { width: 100%; height: 500px; } .swiper-slide img{ width: 100%; height: 100%; object-fit:cover; }

object-fit 属性详解

语法

object-fit 属性由下列的值中的单独一个关键字来指定。

取值

contain

被替换的内容将被缩放,以在填充元素的内容框时保持其宽高比。 整个对象在填充盒子的同时保留其长宽比,因此如果宽高比与框的宽高比不匹配,该对象将被添加‘黑边’

cover

被替换的内容在保持其宽高比的同时填充元素的整个内容框。如果对象的宽高比与内容框不相匹配,该对象将被剪裁以适应内容框。

fill

被替换的内容正好填充元素的内容框。整个对象将完全填充此框。如果对象的宽高比与内容框不相匹配,那么该对象将被拉伸以适应内容框。

none

被替换的内容将保持其原有的尺寸。

scale-down

内容的尺寸与 none 或 contain 中的一个相同,取决于它们两个之间谁得到的对象尺寸会更小一些。


不积跬步无以至千里

评论
楼主暂时不想被别人评论哦~