css 中的grid布局基础

CSS Grid LayoutCSS引入了一个二维网格系统。网格可用于布局主要页面区域或小型用户界面元素。

网格是一组交叉的水平和垂直线 - 一组定义列,其他行。元素可以放在网格上,以行或者列为标准。

grid布局的优点:

1:固定和灵活的轨道尺寸

2:可以使用行号,名称或通过定位网格区域将项目放置在网格上的精确位置。网格还包含一种算法,用于控制未在网格上显示位置的项目的放置。

3:在需要时添加其他行和列

4:网格包含对齐功能,以便我们可以控制项目放置到网格区域后的对齐方式,以及整个网格的对齐方式。

5:可以将多个项目放入网格单元格或区域中,它们可以彼此部分重叠。然后可以用z-index属性控制该分层。

父元素必须设置display为grid或inline-grid

父元素grid属性:

  1. grid-template-columns(row):设置网格的列(行),每一个值就代表创建那行(列)的列(行)宽
  2. fr:代表容器的可用空间,等份的分成对应份数。
  3. minmax():设置创建网格的最大值或最小值,此函数接受两个参数,第一个参数定义最小值,第二个值为最大值,auto值允许尺寸拉伸,
  4. repeat():创建重复的轨道,此函数接受两个参数,第一个参数定义网格轨道应该重复的次数,第二个参数定义每个轨道的尺寸。
  5. grid-column(row)-gap:设置列与列(行与行)之间的间距

grid子元素的属性:

  1. grid-column-start/grid-column-end:设置列线的开始和结束位置
  2. grid-row:是grid-row-start和grid-row-end的简写,当设置为一个值时,代表列的开始位置,
  3. grid-column:当设置为一个值时,代表行的开始位置,
  4. span:span后面紧随数字,表示合并多少个列或行
  5. grid-area:四个值,第一个值对应grid-row-start,第二个值对应grid-column-start,第三个值对应grid-row-end,第四个值对应grid-column-end      分别代表行列开始,行列结束。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<style>
    *{
        padding: 0;
        margin: 0;
    }
.wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 10px;
  grid-auto-rows: minmax(100px, auto);
}
.wrapper div{
    background-color: aquamarine;
}
.one {
  grid-column: 1 / 3;
  grid-row: 1;
}
.two {
  grid-column: 2 / 4;
  grid-row: 1 / 3;
}
.three {
  grid-column: 1;
  grid-row: 2 / 5;
}
.four {
  grid-column: 3;
  grid-row: 3;
}
.five {
  grid-column: 2;
  grid-row: 4;
}
.six {
  grid-column: 3;
  grid-row: 4;
}
</style>
<body>
    <div class="wrapper">
      <div class="one">One</div>
      <div class="two">Two</div>
      <div class="three">Three</div>
      <div class="four">Four</div>
      <div class="five">Five</div>
      <div class="six">Six</div>
    </div>
</body>
</html>

原文地址:https://www.cnblogs.com/NineKit/p/9775804.html

时间: 2024-10-09 06:13:24

css 中的grid布局基础的相关文章

CSS中常见的布局

一.css中常见的布局有哪些? (1)两列布局 (2)三列布局 (3)弹性布局 (4)圣杯布局 (5)双飞翼布局 二.具体实现  (1)两列布局 https://www.cnblogs.com/qing-5/p/11442906.html (2)三列布局 https://www.cnblogs.com/qing-5/p/11338819.html (3)圣杯布局和双飞翼布局 相同点: a.三列布局,中间宽度自适应,两边定宽: b.中间栏要在浏览器中优先展示渲染: c.允许任意列的高度最高: d.

从实例中学习grid布局

对于Web开发者来说,网页布局一直是个比较重要的问题. Web 布局主要经历了以下四个阶段: 1.table表格布局: 2.float浮动及position定位布局: 3.flex弹性盒模型布局,革命性的突破,解决传统布局方案上的三大痛点 "排列方向"."对齐方式","自适应尺寸".是目前最为成熟和强大的布局方案: 4.grid栅格布局,二维布局模块,具有强大的内容尺寸和定位能力,适合需要在两个维度上对齐内容的布局.随着 CSS Grid 的出现

css中的各种布局写法(不定期更新)

前端做久了越来越感觉css的博大精深,虽然css严格意义上算不上是一门编程语言,比如逻辑控制.循环操作.函数等都严重缺少或不足,尽管目前有了很流行的sass.less等css预处理器以便于编写css,但是实际上css的难处在于它的特性,css的属性毕竟太多了,每种属性还有不同的值,效果也各不相同.也难怪不少精通各种语言的大神看到css就头痛(比如这位) 在此总结一下遇到过的常见布局方式 两列布局 1.左侧固定,右侧宽度自适应 (1)通过浮动 https://jsfiddle.net/tgxh/y

CSS中的圣杯布局,以及圣杯布局与双飞翼布局的区别

为了解决中间宽度自适应,左右列固定宽度,最早出现的是圣杯布局,双飞翼布局是对圣杯布局的改良,同样这种 布局的优势在于在中间列中的文档可以优先渲染. 1.什么是圣杯布局 其实对于圣杯布局,前面一部分与双飞翼布局完全相同 <style>   .column{ float:left } .container{ width:100% } .column{ height:300px; }   #center_panel{ width:100%;  background-color:red; } #rig

css中的圣杯布局和双飞翼布局

圣杯布局 布局要求: 三列布局,中间自适应,两边定宽 中间栏要在浏览器优先渲染 允许任意列的高度最高 用最简单的CSS.最少的HACK语句 解释说明: 1.min-width:700px是为了当页面缩小到指定的700px的时候,页面内容宽度不再随着浏览器缩小.是为了电脑的正常浏览效果 2.注意到container设置的值0 220px  0 200px,上 右 下 左,所以left 设置widh:200px,right设置width:220px 3.设置min-height:300px,是让三列

CSS中的圣杯布局与双飞翼布局

一,圣杯布局 1,什么是圣杯布局? 所谓圣杯布局就是用于实现一个两侧宽度固定,中间宽度自适应的三栏布局 2,构建圣杯布局的步骤: 2.1,添加一个容器,在这个容器中添加放三个盒子(左.中.右): 2.2,设置两侧盒子(左.右)的宽度 ,使其宽度固定: 2.3,设置中间盒子的宽度为100%,这是中间盒子宽度自适应的关键: 2.4,设置容器的padding-left和padding-right属性,属性值分别为左盒子的宽度和右盒子的宽度: 2.5,让三个盒子都向左浮动,向右浮动可能会出现问题,所以都

CSS中的flex布局

1.flex 布局的概念 Flex是Flexible Box的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性.任何一个容器都可以指定为 Flex 布局,行内元素也可以通过 inline-flex 使属性值用 Flex 布局. inline-flex 和 inline-block 一样,对设置了该属性值的元素的子元素来说是个 display:flex 的容器,对外部元素来说是个 inline 的块. .box{ display: flex; } .inlinebox{ displ

css中响应式布局中样式的代码书写方法

代码示例:@media only screen and (min-width: 320px){ html { font-size: 8px !important; } .mulu-zi{ position: absolute; top: 18px !important; left: 18%; color: #000000; } } @media only screen and (min-width: 375px){ html { font-size: 10px !important; } .mu

css基础css页面布局基础

样式可以在HTML中定义,也可以在一个单独的外部样式文件中定义.样式可以分为嵌入式样式表,外部样式表,内联样式表. 外部样式表:首先要建一个后缀为.css的样式表文件,然后在web文档中的<head>段使用<link>标记,这样就可以将一个外部样式表文件链接到文档中. 语法:<link rel="stylesheet" type="text/css" href="样式表的url"/> 嵌入式样式表:在web文档