img大于div时居中显示(类似相册总览)

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        .A{
            width:200px;
            height:200px;
            overflow: hidden;
        }
        .B{
            width:100%;
            height:100%;
            object-fit: cover;
        }
    </style>
</head>
<body>
<div class="A">
    <img src="../images/myclass.jpg" alt="" class="B" >
</div>
</body>
</html>

img大于div时居中显示(类似相册总览)img大于div时居中显示(类似相册总览)

主要运用到object-fit的属性(IE不支持)

/* 关键属性 */
object-fit: fill;
object-fit: contain;
object-fit: cover;
object-fit: none;
object-fit: scale-down;

/* 全局属性 */
object-fit: inherit;
object-fit: initial;
object-fit: unset;

fill

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

contain

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

cover

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

none

被替换的内容尺寸不会被改变。

scale-down

内容的尺寸就像是指定了nonecontain,取决于哪一个将导致更小的对象尺寸。