记住网格布局,吊打flex布局

前言

网格布局真的现在很流行,当然flex也行,当时吧真的有些布局真的适合网格

 

让我秘制 忘不掉的间距24px的布局,麻了麻了

实现边距都是24,且一行只有2个元素,有多行的

提供2种布局:

grid

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <style>
    .grid-container {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 24px;
      margin: 24px;
    }

    .grid-item {
      background-color: #ddd;
      padding: 20px;
      text-align: center;
    }
  </style>
  <title>Grid Layout Example</title>
</head>
<body>
  <div class="grid-container">
    <div class="grid-item">Item 1</div>
    <div class="grid-item">Item 2</div>
    <div class="grid-item">Item 3</div>
    <div class="grid-item">Item 4</div>
    <!-- 添加更多元素 -->
  </div>
</body>
</html>

解释:

.grid-container 是网格容器,

使用grid-template-columns: repeat(2, 1fr);定义了两列的网格布局,

并使用gap: 24px;设置了网格之间的间隔。.grid-item 是每个网格元素,

样式中设置了背景色和内边距以使其更具可读性。

flex布局

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <style>
    .flex-container {
      display: flex;
      flex-wrap: wrap;
      gap: 24px;
      margin: 24px;
    }

    .flex-item {
      flex: 1 0 calc(50% - 24px);
      background-color: #ddd;
      padding: 20px;
      box-sizing: border-box;
    }
  </style>
  <title>Flex Layout Example</title>
</head>
<body>
  <div class="flex-container">
    <div class="flex-item">Item 1</div>
    <div class="flex-item">Item 2</div>
    <div class="flex-item">Item 3</div>
    <div class="flex-item">Item 4</div>
    <!-- 添加更多元素 -->
  </div>
</body>
</html>

解释: 

.flex-container 是弹性容器,使用了display: flex;flex-wrap: wrap;

来实现弹性布局并允许元素换行。.flex-item 是每个弹性项目,使用flex: 1 0 calc(50% - 24px);来定义每行两个元素,

并且使用box-sizing: border-box;

来确保边框和内边距不会增加元素的宽度。

 

posted @ 2024-02-27 12:10  -鹿-  阅读(6)  评论(0编辑  收藏  举报