<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>css grid网格布局教程</title><style>/* 最强大的css布局方案 *//* 他将网页划分成一个个网络,可以任意组合不同的网格,做出各种各样的布局 */.container {display: grid;/* 容器指定了网格布局以后,接着就要划分行和列。grid-template-columns属性定义每一列的列宽,grid-template-rows属性定义每一行的行高 *//* grid-template-columns: 100px 100px 100px; *//* grid-template-rows: 100px 100px 100px; *//* 上面指定了行和高为100px *//* 除了用绝对单位,也可用使用百分比 *//* grid-template-columns: 33.33% 33.33% 33.33%; *//* grid-template-rows: 33.33% 33.33% 33.33%; *//* repeat *//* 接受两个参数,第一个参数是重复的次数(上例是3),第二个参数是所要重复的值。 *//* grid-template-columns: repeat(3, 33.33%); *//* grid-template-rows: repeat(3, 100%); *//* auto-fill 表示自动填充 *//* grid-template-columns: repeat(auto-fill, 100px); *//* fr关键字 *//* 为了方便表示比例关系,网格布局提供了fr关键字(fraction 的缩写,意为"片段")。如果两列的宽度分别为1fr和2fr,就表示后者是前者的两倍。 *//* grid-template-columns: 1fr 1fr; *//* fr可以与绝对长度的单位结合使用,这时会非常方便 *//* 第一列的宽度为150像素,第二列的宽度是第三列的一半 *//* grid-template-columns: 100px 1fr 2fr; *//* minmax() *//* 函数产生一个长度范围,表示长度就在这个范围之中。它接受两个参数,分别为最小值和最大值 *//* grid-template-columns: 1fr 1fr minmax(100px, 1fr); *//* auto关键安:关键字表示由浏览器自己决定长度 *//* grid-template-columns: 100px auto 100px; *//* 网格线的名称 *//* 属性里面,还可以使用方括号,指定每一根网格线的名字,方便以后的引用。 */grid-template-columns: [a1] 100px [a2] 100px [a3] auto;grid-template-rows: [b1] 200px [b2] 200px [b3] auto;}.item {font-size: 2em;text-align: center;border: 1px solid greenyellow;}.item-1 {background-color: red;}.item-2 {background-color: yellowgreen;}.item-3 {background-color: greenyellow;}.item-4 {background-color: blue;}.item-5 {background-color: blueviolet;}.item-6 {background-color: cyan;}.item-7 {background-color: darkorange;}.item-8 {background-color: olivedrab;}.item-9 {background-color: olive;}</style></head><body><!-- Flex 布局是轴线布局,只能指定"项目"针对轴线的位置,可以看作是一维布局。Grid 布局则是将容器划分成"行"和"列",产生单元格,然后指定"项目所在"的单元格,可以看作是二维布局。Grid 布局远比 Flex 布局强大 --><!-- 容器里面的水平区域称为"行"(row),垂直区域称为"列"(column) --><!-- 行和列的交叉区域,称为"单元格"(cell)。 --><!-- 正常情况下,n行和m列会产生n x m个单元格。比如,3行3列会产生9个单元格 --><p>第一行</p><!-- 下面第一个div是容器 --><div class="container"><!-- 以下div是项目 --><!-- 注意:项目只能是容器的顶层子元素,不包含项目的子元素,比如上面代码的<p>元素就不是项目。Grid 布局只对项目生效。 --><div class="item item-1"><p>1</p></div><div class="item item-2">2</div><div class="item item-3">3</div><div class="item item-4">4</div><div class="item item-5">5</div><div class="item item-6">6</div><div class="item item-7">7</div><div class="item item-8">8</div><div class="item item-9">9</div></div><p>最后一行</p></body></html>
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号