[英]How to force the image and video to fit inside the div without changing aspect ratio?
[英]CSS: How to force background image to stretch/compress to fit div, without keeping aspect ratio
我遇到了一个令人沮丧的问题,希望得到一些帮助。
我编写了一个脚本,允许我为正在为客户构建的应用程序调整屏幕上 div 的大小,但我遇到了一个我以前从未遇到过的幽默问题。 我知道很多方法可以确保图像不会保留其长宽比,但我不知道如何迫使一个没有。 例如,如果 div 高 200 像素,宽 20 像素,我希望它使图像变形以适合该框。
对于我正在构建的应用程序,无论纵横比如何,此特定图像都需要压缩/拉伸以适合父 div。 现在,我可以将其作为 div 标签内的图像,或作为 div 的背景图像。
如果有人有任何建议,我很乐意听取他们的意见。
您可以为此使用background-size: 100% 100%
:
div { margin-bottom: 1em; width: 300px; height: 200px; border: 3px solid black; background: url(https://unsplash.it/100x100); background-repeat: no-repeat; background-size: 100% 100%; } div:nth-of-type(2) { width: 100px; height: 400px; } div:nth-of-type(3) { width: 500px; height: 200px; }
<div></div> <div></div> <div></div>
在 CSS 中, background-size 属性可以改变背景图像与元素的比例。
background-size: cover
编辑:
如果你想保持结构,你可以使用 CSS object-fit 属性https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit
这是一个使用background
重新调整大小的示例:
div{ resize:both; overflow:hidden; width:200px; height:300px; background:url(https://picsum.photos/200/300)no-repeat 0 0; background-size:100% 100%; }
<div></div>
这是另一个使用img
:
div{ resize:both; overflow:hidden; height:300px; width:200px; } img{ width:100%; height:100%; }
<div> <img src="https://picsum.photos/200/300"/> </div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.