CSS 用 flex 布局绘制骰子

html 复制代码
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title></title>
    <style>
      .box {
        height: 100px;
        width: 100px;
        border: 2px solid grey;
        border-radius: 10px;
        display: flex;
        justify-content: center; // 水平居中
        /* align-items: center; */
      }

      .point {
        width: 20px;
        height: 20px;
        border-radius: 50%;
        background: black;
        /* align-self 写在子元素上,覆盖父元素指定的交叉轴对齐方式 */
        align-self: center;
      }
    </style>
  </head>
  <body>
    <div class="box">
      <div class="point"></div>
    </div>
  </body>
</html>
html 复制代码
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title></title>
    <style>
      .box {
        height: 100px;
        width: 100px;
        border: 2px solid grey;
        border-radius: 10px;
        display: flex;
        /* 主轴改为纵向  */
        flex-direction: column;
        /* 等分 */
        justify-content: space-evenly;
        /* 垂直居中 */
        align-items: center;
      }

      .point {
        width: 20px;
        height: 20px;
        border-radius: 50%;
        background: black;
      }
    </style>
  </head>
  <body>
    <div class="box">
      <div class="point"></div>
      <div class="point"></div>
    </div>
  </body>
</html>
html 复制代码
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title></title>
    <style>
      .box {
        height: 100px;
        width: 100px;
        border: 2px solid grey;
        border-radius: 10px;
        display: flex;
        padding: 10px;
        /* 主轴改为纵向  */
        flex-direction: column;
        /* 子元素间距相等*/
        justify-content: space-between;
      }

      .point {
        width: 25px;
        height: 25px;
        border-radius: 50%;
        background: black;
      }

      .point:nth-child(2) {
        /* 居中对齐 */
        align-self: center;
      }

      .point:nth-child(3) {
        /* 终点对齐 */
        align-self: flex-end;
      }
    </style>
  </head>
  <body>
    <div class="box">
      <div class="point"></div>
      <div class="point"></div>
      <div class="point"></div>
    </div>
  </body>
</html>
html 复制代码
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title></title>
    <style>
      .box {
        margin: 20px;
        height: 100px;
        width: 100px;
        border: 2px solid grey;
        border-radius: 10px;
        padding: 10px;
        box-sizing: border-box;

        display: flex;
        /* 纵向 */
        flex-wrap: wrap;
        /* 相对均匀对齐  */
        align-content: space-between;
      }

      .row {
        /* 空间大小 */
        flex-basis: 100%;
        display: flex;
        justify-content: space-between
      }

      .point {
        border-radius: 50%;
        height: 25px;
        width: 25px;
        background: black;
      }
    </style>
  </head>
  <body>
    <div class="box">
      <div class="row">
        <div class="point"></div>
        <div class="point"></div>
      </div>
      <div class="row">
        <div class="point"></div>
        <div class="point"></div>
      </div>
    </div>
  </body>
</html>
html 复制代码
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title></title>
    <style>
      .box {
        margin: 20px;
        height: 100px;
        width: 100px;
        border: 2px solid grey;
        border-radius: 10px;
        padding: 10px;
        box-sizing: border-box;

        /* 容器内元素使用flex布局 */
        display: flex;
        /* 将主轴改为纵向 */
        flex-direction: column;
        /* 主轴(纵向)绝对均匀对齐(子元素间距以及两端边缘间距都相等) */
        justify-content: space-evenly;
      }

      .row1 {
        /* 每行内元素使用flex布局 */
        display: flex;
        /* 主轴(横向)相对均匀对齐 */
        justify-content: space-between;
      }

      .row2 {
        /* 每行内元素使用flex布局 */
        display: flex;
        /* 主轴(横向)居中对齐 */
        justify-content: center;
      }

      .point {
        border-radius: 50%;
        height: 25px;
        width: 25px;
        background: black;
      }
    </style>
  </head>
  <body>
    <div class="box">
      <div class="row1">
        <div class="point"></div>
        <div class="point"></div>
      </div>
      <div class="row2">
        <div class="point"></div>
      </div>
      <div class="row1">
        <div class="point"></div>
        <div class="point"></div>
      </div>
    </div>
  </body>
</html>
html 复制代码
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title></title>
    <style>
      .box {
        margin: 20px;
        height: 100px;
        width: 100px;
        border: 2px solid grey;
        border-radius: 10px;
        padding: 10px;
        box-sizing: border-box;

        /* 容器内元素使用flex布局 */
        display: flex;
        /* 将主轴改为纵向 */
        flex-direction: column;
        /* 主轴(纵向)相对均匀对齐 */
        justify-content: space-between;
      }

      .row {
        /* 每行内元素使用flex布局 */
        display: flex;
        /* 主轴(横向)绝对均匀对齐 */
        justify-content: space-evenly;
      }

      .point {
        border-radius: 50%;
        height: 20px;
        width: 20px;
        background: black;
      }
    </style>
  </head>
  <body>
    <div class="box">
      <div class="row">
        <div class="point"></div>
        <div class="point"></div>
        <div class="point"></div>
      </div>
      <div class="row">
        <div class="point"></div>
        <div class="point"></div>
        <div class="point"></div>
      </div>
      <div class="row">
        <div class="point"></div>
        <div class="point"></div>
        <div class="point"></div>
      </div>
    </div>
  </body>
</html>
相关推荐
tager1 小时前
🔥3行代码搞定全局代理!告别插件依赖的极简方案
前端·fiddler·charles
gnip2 小时前
axios 拦截器实现用户无感刷新 access_token
前端
程序员码歌2 小时前
【零代码AI编程实战】AI灯塔导航-成果展示篇
前端·ai编程·cursor
gnip2 小时前
前端实现即时通讯,常用的技术
前端
烛阴3 小时前
告别 any!用联合类型打造更灵活、更安全的 TS 代码
前端·typescript
excel4 小时前
全面解析 JavaScript 类继承:方式、优缺点与应用场景
前端
用户21411832636024 小时前
dify案例分享-100% 识别率!发票、汇票、信用证全搞定的通用票据识别工作流
前端
拾光拾趣录5 小时前
基础 | HTML语义、CSS3新特性、浏览器存储、this、防抖节流、重绘回流、date排序、calc
前端·面试
小小小小宇6 小时前
前端监测用户卡顿之INP
前端
小小小小宇6 小时前
监测用户在浏览界面过程中的卡顿
前端