CSS的小技巧

等宽不等高布局(利用flex布局和object-fit这个属性)

<body>
    <section>
        <div>
            <img src="./images/01.jpeg" alt="">
        </div>
        <div>
            <img src="./images/02.jpeg" alt="">
        </div>
        <div>
            <img src="./images/03.jpeg" alt="">
        </div>
        <div>
            <img src="./images/04.jpeg" alt="">
        </div>
        <div>
            <img src="./images/05.jpeg" alt="">
        </div>
        <div>
            <img src="./images/06.jpeg" alt="">
        </div>
        <div>
            <img src="./images/07.jpeg" alt="">
        </div>
        <div>
            <img src="./images/1.png" alt="">
        </div>
        <div>
            <img src="./images/2.png" alt="">
        </div>
        <div>
            <img src="./images/3.png" alt="">
        </div>
        <div>
            <img src="./images/4.png" alt="">
        </div>
        <div>
            <img src="./images/5.png" alt="">
        </div>
        <div>
            <img src="./images/6.png" alt="">
        </div>
        <div>
            <img src="./images/7.png" alt="">
        </div>
    </section>
</body>
section{
   display:flex;
   flex-wrap:wrap;
}
section::after{ // 为了解决最后一行因为flex-grow:1 拉伸的问题
  content: ' ';
  flex-grow: 999999999;   
}
div{
  flex-grow:1;
  margin:2px;
  background-color: grey; 
}
img{
 object-fix: cover; // 等比例缩放
 height: 200px;
 min-width:100%;
 vertifical-align:bottom;
}
object-fit几个属性的值.png

image.png

// 正方形布局

       section{
          display: flex;
          flex-wrap: wrap;
        }
        div{
            width: 200px;
            margin: 5px;
            background-color: blue;
            flex-grow: 1;
        }
        div::after{
            content: '';
            display: block;
            padding-bottom: 100%; // 这个属性就能实现正方形布局
        }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 使用纯 CSS 实现 500px 照片列表布局 文章很长,因为介绍了如何一步一步进化到最后接近完美的效果的,不想读...
    HZ充电大喵阅读 2,686评论 0 4
  • 关于css常见问题,大多是移动端的。 简单的排版规则:条目与条目之间空两行,每条内容部分分段空一行。标点符号全部用...
    苏水儿阅读 5,062评论 0 9
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,814评论 1 92
  • 题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。解:队列:先进先出栈:...
    MAXPUP阅读 130评论 0 0
  • 00:00:00 1、 这个夏天,过去的是如此猝不及防,偶尔有些星星点点的雨,炎热也就被随之被带走,太阳就如...
    百洋阅读 513评论 7 4