object-fit
se comporte comme background-size
La mise à l'échelle des images permet de résoudre le problème de la mise à l'échelle des images pour qu'elles s'adaptent.
La propriété CSS object-fit spécifie comment le contenu d'un élément remplacé doit être adapté à la boîte établie par sa hauteur et sa largeur utilisées.
https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit
![snapshot of an image rendered with all the object-fit options]()
.cover img {
width: 100%;
height: 100%;
object-fit: cover;
overflow: hidden;
}
Support des navigateurs
Il n'y a pas de support pour IE, et le support pour Edge commence à la v16, seulement pour img
élément : https://caniuse.com/#search=object-fit
Les bfred-it/object-fit-images polyfill fonctionne très bien pour moi dans IE11, testé sur Browserstack : démo .
Alternative sans polyfill pour l'utilisation d'une image en SVG
Pour Edge pré v16, et ie9, ie10, ie11 :
Vous pouvez recadrer et mettre à l'échelle n'importe quelle image à l'aide de CSS object-fit
et object-position
. Toutefois, ces propriétés ne sont prises en charge que dans la dernière version de MS Edge ainsi que dans tous les autres navigateurs modernes.
Si vous avez besoin de recadrer et de mettre à l'échelle une image dans Internet Explorer et de fournir un support à IE9, vous pouvez le faire en enveloppant l'image dans une balise <svg>
et en utilisant le viewBox
et preserveAspectRatio
pour faire ce que l'on attend d'eux. object-fit
et object-position
faire.
http://www.sarasoueidan.com/blog/svg-object-fit/#summary-recap
(L'auteur explique cette technique en détail et il serait impossible de la reproduire ici).
1 votes
Vous pourriez fixer la largeur et la hauteur de la balise img à 250px.