css网格布局

先来一段基本布局

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
    <style>
        .container {
            display: grid;
            grid-template-columns: 100px 100px 100px;// 三个100px分别是第一列、第二列、第三列div的宽度
            grid-template-rows: 50px 50px;// 第一个50px是第一行的高度,第二个50px是第二行的高度
        }
        .container>div:nth-of-type(1){background-color: greenyellow;}
        .container>div:nth-of-type(2){background-color: deeppink;}
        .container>div:nth-of-type(3){background-color: deepskyblue;}
        .container>div:nth-of-type(4){background-color: salmon;}
        .container>div:nth-of-type(5){background-color: purple;}
        .container>div:nth-of-type(6){background-color: yellowgreen;}
    </style>
</head>

<body>
    <div class="container">
        <div>1</div>
        <div>2</div>
        <div>3</div>
        <div>4</div>
        <div>5</div>
        <div>6</div>
    </div>
<script src="https://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script>
<script>

</script>
</body>
</html>

效果是这样的:

现在开始修改css语句:

grid-template-columns: 1fr 1fr 1fr;

只改了这一行,效果如下,直接就是响应式了:

再稍作修改:

grid-template-columns: 1fr 2fr 1fr;

也就是说,fr控制宽度的比例。

repeat()函数

grid-template-columns: repeat(3,100px);
grid-template-rows: repeat(2,50px);

效果如下:

和grid-template-columns: 100px 100px 100px;grid-template-rows: 50px 50px;效果一样。

auto-fit

grid-template-columns: repeat(auto-fit,100px);
grid-template-rows: repeat(3,50px);

效果如下:

现在布局成了自适应数量,这里将宽度设置成了100px,则很大概率右边会有留白。

原文地址:https://www.cnblogs.com/wuqilang/p/11881240.html

时间: 2024-10-29 17:58:08

css网格布局的相关文章

CSS网格布局(Grid)教程

一.概述 CSS网格布局(Grid)是一套二维的页面布局系统,它的出现将完全颠覆页面布局的传统方式. 首先来介绍几个概念: 想象一个三行三列的布局,网格线就是构成网格所有的线条,三行三列的布局每行就会有4条网格线. 网格轨道就是相邻两条平行的网格线之间的部分. 和flex布局一样,他会有父容器和子项目,在这儿我们称为网格容器和网格项. 接下来,我们从网格容器到网格项的各个基本属性来介绍网格布局. 二. 网格容器 将属性 display 值设为 grid 或 inline-grid 就创建了一个网

css 网格布局

一.概述 网格布局(Grid)是最强大的 CSS 布局方案. 它将网页划分成一个个网格,可以任意组合不同的网格,做出各种各样的布局.以前,只能通过复杂的 CSS 框架达到的效果,现在浏览器内置了. 上图这样的布局,就是 Grid 布局的拿手好戏. Grid 布局与 Flex 布局有一定的相似性,都可以指定容器内部多个项目的位置.但是,它们也存在重大区别. Flex 布局是轴线布局,只能指定"项目"针对轴线的位置,可以看作是一维布局.Grid 布局则是将容器划分成"行"

CSS多列布局Multi-column、伸缩布局Flexbox、网格布局Grid详解

新css属性为我们提供了更加便捷的网页布局方式.来自微软的thomas lewis将带你认识去Grid Alignment,Flexibox Box以及Multi-column Layout这三大领域. 这篇文章最早出现在the April 2012 issue (226)这期的.net杂志上-这杂志是面向网页设计者以及开发者,全球销量最高的杂志. 按照以往来说,用CSS来布局看起来总是一样非常繁杂的工作.然而,随着一个个新标准的推出,网页设计者已经能够实现非常轻松地进行布局工作了. 主流的浏览

960网格布局框架(前端css框架)的使用方法

960框架总宽960px CSS框架已经出现很长时间了,关于这些框架的用处也被我们讨论了很多遍了.有人说,CSS框架不够先进,还有人说这些框架大大的节省了他们的开发时间.在此,我们将不再讨论这个问题. 前段时间,我了解到了CSS框架.经过对Malo.BluePrint和960做了实验对比后,我得出一个结论:我最喜欢960CSS框架. 本教程将解释这个框架的基本原理,这样你就可以用960来快速进入开发. 基本原理 你必须知道一些基本原理来“学习这个框架是如何工作的”.你可以通过实验(或者是用fir

为网格布局图片打造的超炫 CSS 加载动画

今天,我想与大家分享一些专门为网格布局的图像制作的很酷的 CSS 加载动画效果.您可以把这些效果用在你的作品集,博客或任何你想要的网页中.设置很简单.我们使用了下面这些工具库来实现这个效果: Normalize.css 来替代传统的 CSS 复位: ZURB Foundation 创建具有响应式的网格: Masonry 创建一个动态的网格布局: imagesLoaded 检查是否已加载图像: Infinite Scroll加载更多图片并追加到画廊. 现在,让我们来看看一些实际的代码,这应该是大家

纯CSS最小响应网格布局

lemonade.css是一个超级小的CSS可以帮助你创建一个完全响应和灵活自如的网格布局,包括所需网页的头部. 样式链接 <link rel= href=> HTML结构这样创建一个多列网格布局: <div class="frame"> <div class="bit-1"> <div class="box">1</div> </div> </div> <

CSS Grid 网格布局教程

一.概述 网格布局(Grid)是最强大的 CSS 布局方案. 它将网页划分成一个个网格,可以任意组合不同的网格,做出各种各样的布局.以前,只能通过复杂的 CSS 框架达到的效果,现在浏览器内置了. 上图这样的布局,就是 Grid 布局的拿手好戏. Grid 布局与 Flex 布局有一定的相似性,都可以指定容器内部多个项目的位置.但是,它们也存在重大区别. Flex 布局是轴线布局,只能指定"项目"针对轴线的位置,可以看作是一维布局.Grid 布局则是将容器划分成"行"

css布局 弹性布局 和 网格布局

这里就不写这两种布局的内容了 弹性布局链接:http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html 网格布局链接:https://www.jianshu.com/p/d183265a8dad 小测试: 用 flex 与 grid 实现如下即可: <html> <head> <style> /* flex */ .box { display: flex; flex-wrap: wrap; width: 100%;

CSS3 网格布局(grid-layout)基础知识 - 网格模板属性(grid-template)使用说明

CSS3引入了新的网格布局(grid layout),以适应显示和设计技术的发展(尤其是移动设备优先的响应式设计). 主要目标是建立一个稳定可预料且语义正确的网页布局模式,用来替代过往表现不稳定且繁琐的table.flow以及JS脚本混合技术来实现的网页动态布局. 本文将简单而准确的介绍网格布局属性的基本概念和使用方法(摘自踏得网在线HTML5教程). 1. 概述 网格模板区域(grid-template-areas).网格模板行(grid-template-rows)和网格模板列(grid-t