抑郁症健康,内容丰富有趣,生活中的好帮手!
抑郁症健康 > CSS3 object-fit理解 以及object-fit的兼容性 包括兼容IE9+浏览器 – CSS – 前端 css3 放大

CSS3 object-fit理解 以及object-fit的兼容性 包括兼容IE9+浏览器 – CSS – 前端 css3 放大

时间:2022-08-20 03:10:31

相关推荐

下面简单讲述下object-fit的含义以及如何提高兼容性,比如兼容IE!

object-fit理解

CSS3background-size出现的比较早,大家应该知道其支持的一些值,除了数值之外,其还支持几个关键字,例如:cover,contain等。

object-fit也是类似的,但还是有些差异,具体有5个值:

.fill{object-fit:fill;}.contain{object-fit:contain;}.cover{object-fit:cover;}.none{object-fit:none;}.scale-down{object-fit:scale-down;}

每个属性值的具体含义如下(自己理解的白话文,官方释义见官网):

fill: 中文释义“填充”。默认值。替换内容拉伸填满整个content box, 不保证保持原有的比例。

contain: 中文释义“包含”。保持原有尺寸比例。保证替换内容尺寸一定可以在容器里面放得下。因此,此参数可能会在容器内留下空白。

cover: 中文释义“覆盖”。保持原有尺寸比例。保证替换内容尺寸一定大于容器尺寸,宽度和高度至少有一个和容器一致。因此,此参数可能会让替换内容(如图片)部分区域不可见。

none: 中文释义“无”。保持原有尺寸比例。同时保持替换内容原始尺寸大小。

scale-down: 中文释义“降低”。就好像依次设置了none或contain, 最终呈现的是尺寸比较小的那个。

假设大家使用的原始图片是:

容器的尺寸是160*160, 背景色是灰蓝色,同时,测试的图片高宽设置为100%, 如下CSS代码:

.box{width:160px;height:160px;background-color:#beceeb;}.box>img{width:100%;height:100%;}

结果,各个属性值的表现如下截图:

大家可以对照示意感受下,什么是内容拉伸(fill),什么是内容全部都显示(contain),什么是容器没有留白(cover),什么是该多大就多大(none)。

object-fit兼容性

首先,看下object-fit目前兼容的浏览器,IE是完全不支持啊,怎么搞到object-fit去兼容至少IE9呢!

对于IE全部不兼容,那么总有办法吧? 下面介绍一个方法,使用CSS+JS的方法去兼容IE9+!

下面看一个案例:(可以支持IE9+)

<!doctypehtml><html><head><metacharset="utf-8"><title>CSS3object-fit理解以及object-fit的兼容性,包括兼容IE9+浏览器</title></head><body><style>.box{width:160px;height:160px;margin:10px020px;background-color:#beceeb;overflow:hidden;resize:both;}.boximg{width:160px;height:160px;background-color:#cd0000;overflow:hidden;object-fit:cover;}</style><linkrel="stylesheet"href="object-fit-master/dist/polyfill.object-fit.css"><strong>object-fit:cover</strong><divclass="box"><imgsrc="偶的支付宝.jpg"></div><!--兼容JS文件--><scriptsrc="object-fit-master/dist/polyfill.object-fit.js"></script><script>//Callpolyfilltofitinimagesdocument.addEventListener(DOMContentLoaded,function(){objectFit.polyfill({selector:img,fittype:cover});});</script><!--//兼容JS--></body></html>

其中的CSS和JS文件,打包放在这里!

下载:dist.zip

使用CSS+JS去兼容IE9+测试成功!

如果觉得《CSS3 object-fit理解 以及object-fit的兼容性 包括兼容IE9+浏览器 – CSS – 前端 css3 放大》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。