多列属性实现双列布局

1. 前言

这是一个经常被忽略的一个属性,因为很少有人知道,或者说大部分人仅仅只是知道,但并没有使用过。

它的语法形式是酱紫的:columns: 2(列数);

2. 实现

实例演示
预览 复制
复制成功!
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <style>
    /* 清除默认样式 */
    * { padding: 0; margin: 0; }

    /* 令html和body全屏显示, 并有一个灰色背景 */
    html, body { height: 100%; background: gray; }

    /* 找到直接父元素 */
    body {
      /* 将列数设置为2 */
      columns: 2;
      
      /* 设置列间距 */
      column-gap: 10px;
    }

    div {
      /* 给个高度 */
      height: 100%;

      /* 白色背景 */
      background: white;
    }

    /* 左边盒子设置左边距 */
    .left { margin-left: 10px; }

    /* 右边盒子设置右边距 */
    .right { margin-right: 10px; }
  </style>
</head>
<body>
  <div class="left"></div>
  <div class="right"></div>
</body>
</html>
运行案例 点击 "运行案例" 可查看在线运行效果

运行结果:

图片描述

3. 小结

多列属性 columns 是 CSS3 的新增属性。

但它却并不像其他 CSS3 新属性(如 transform)知名度那么高,甚至很多人都不知道还有这么个玩意,大家有空的话可以去了解一下。