批改状态:合格
老师批语:
980px移动设备的布局视图: 375px、width = device-width
width: 页面的布局的宽度
device-width: 视觉视图的宽度, 设备宽度
width = 980px
device-width: 375px
width = device-width
width = 375px
当前的布局视图,就是当前移动设备浏览器的可视区宽度
理想视图目前主流的移动端布局方案: rem + vw
浏览器的默认字号: 16px, 1rem = 16px
<!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>rem+vw布局的原理与rem的设置技巧</title></head><body><style>html {/* font-size: 100px; */font-size: calc(100vw / 3.75);}/* 因为 font-size是一个可以被继承的属性 */body {/* 把字号还原成浏览器默认的字号, 16px *//* font-size: 16px; */font-size: 0.16rem;}/* 到现在为止,1rem = 100px html1em = 16px body */</style><div class="box">hello php.cn</div><style>.box {/* 200px * 50px */width: 2rem;height: 0.5rem;border: 1px solid #000;background-color: lightgreen;box-sizing: border-box;}/* vw 是 当前屏幕宽度的 百分比 *//* 1vw = 1% *//* 当屏幕宽度小于320px的时候, 字号不要再小了,否则就看不清了 */@media screen and (max-width: 320px) {html {font-size: 85px;}}/* 当屏幕宽度大于640px的时候, 字号不要再放大了 */@media screen and (min-width: 640px) {html {font-size: 170px;}}</style></body></html>
| STT | 属性 | 说明 |
|---|---|---|
| 1 | display: grid; |
声明容器为网格容器 |
| 2 | grid-template-columns: 30rem 30rem 30rem |
显示的划分列,生成指定数量的单元格来放置项目 |
| 3 | grid-template-rows: 30rem 30rem 30rem |
显示的划分行,与列组成单元格 |
| 4 | grid-auto-columns: auto; |
根据项目数量在容器中隐式生成行与列来放置项目,列宽自动 |
| 5 | grid-auto-rows: 150px; |
根据项目数量在容器中隐式生成行与列来放置项目,行高 150 PX |
| 6 | grid-auto-flows: column; |
声明项目在网格中自动填充方案,列优先 |
| 7 | grid-auto-flows: row; |
声明项目在网格中自动填充方案,行优先 |
repeat重复设置单元格时命名网格线会自动添加索引repeat(3,[col-start] 100px [col-end]):只需设置命名前缀,编号会自动生成grid-column-end: cil-end 3;: 前缀索引可以应用到自动生成的命名网格线| STT | 单位 |
|---|---|
| 1 | px: 固定宽度 |
| 1 | rem: 根据根元素字号大小 |
| 2 | %: 百分比 |
| 3 | auto: 自动计算 |
| 4 | fr: 比例 |
| 5 | repeat('重复次数', '每次大小'): 重复生成 |
| 6 | 分组: |
| 7 | minmax: 区间 |
| 8 | auto-fill: 自动填充 |
grid-template-columns: [col1-s] 100px [col1-e col2-s] 100px;grid-template-rows: [row1-s] 100px [row1-e] 100px;grid-column-start: col2-s;grid-row-start: row1-s;
| STT | 示例 | 说明 |
|---|---|---|
| 1 | grid-row-start: 1; | 设置开始行线编号,默认即从 1 开始 |
| 1 | grid-row-end: 3; | 设置结束行线编号为 3 |
| 2 | grid-column-start: 1; | 设置开始列线编号,默认即从 1 开始 |
| 2 | grid-column-end: 2; | 设置开始列线编号为 2 |
| 3 | grid-row: 1 / 3; | 简写,开始行线编号 / 结束行线编号 |
| 4 | grid-colum: 1 / 2; | 简写,开始列线编号 / 结束列线编号 |
| 5 | grid-row-start: 2 span 2 | 设置开始行线编号为 2 跨 2 行,== grid-row: 1 / 3; |
| 6 | grid-colum-start: 2 span 2 | 设置开始列线编号为 2 跨 2 列,== grid-colum: 1 / 3; |
| 7 | grid-row: 3 / span 2 | 设置开始行线编号为 3,然后跨 2 行 |
| 8 | grid-colum: 2 / span 2 | 设置开始行线编号为 3,然后跨 2 列 |
| 9 | grid-area: 1 1 3 2 | 网格区域行开始/列开始/行结束/列结束 |
| 9 | grid-area: 3 / 1 / span 1 / span 3; | 行 3 开始,列 1 开始,行跨 1,列跨 3 |
grid-template-areas命名区域
.container {/* 创建网格区域 */display: grid;grid-template-columns: 30rem 30rem 30rem;grid-template-rows: 30rem 30rem 30rem;/* 设置命名网格区域相同名称的命名区域会合并 */grid-template-areas:"header header header""left main rigth""footer footer footer";}.item {grid-area: header;}
.作为占位符
.container {/* 设置命名网格区域相同名称的命名区域会合并 */grid-template-areas:"header header header"". . .""footer footer footer";}.item {grid-area: header;}
默认名称
.item {grid-area: header-start / header-start / header-end / header-end;}
| STT | 属性 | 说明 |
|---|---|---|
| 1 | justify-content: start/end/center; |
设置项目在容器水平方向的对齐方式:开始/结束/居中;默认开始 |
| 2 | justify-content: space-between/space-around/space-evenly; |
设置项目在容器水平方向的对齐方式:两端/分散/平均; |
| 3 | align-content: start/end/center; |
设置项目在容器垂直方向的对齐方式:开始/结束/居中;默认开始 |
| 4 | align-content: space-between/space-around/space-evenly; |
设置项目在容器垂直方向的对齐方式:两端/分散/平均; |
| 5 | place-content: '水平方向' '垂直方向'; |
简写 |
| STT | 属性 | 说明 |
|---|---|---|
justify-items: start/end/center; |
设置所有项目在单元格/网格区域中,水平方向的对齐方式: 开始/结束/居中;默认开始 | |
align-items: start/end/center; |
设置所有项目在单元格/网格区域中,垂直方向的对齐方式: 开始/结束/居中;默认开始 | |
place-items: '水平方向' '垂直方向'; |
简写 |
| STT | 属性 | 说明 |
|---|---|---|
| justify-self: start/end/center; | 设置某个项目在单元格/网格区域中,水平方向的对齐方式: 开始/结束/居中;默认开始 | |
| align-self: start/end/center; | 设置某个项目在单元格/网格区域中,垂直方向的对齐方式: 开始/结束/居中;默认开始 | |
| place-self: ‘水平方向’ ‘垂直方向’;` | 简写 |
gap: 5px;设置行列间距,行与列间距相等可只写一个值;gap: 行间距 列间距;column-gap: 列间距;row-gap: 行间距;
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>grid布局中相关属性</title><style>* {margin: 0;padding: 0;outline: none;box-sizing: border-box;}.container {background-color: #f2f3bb;width: 40rem;height: 40rem;/* 创建网格容器 */display: grid;grid-template-columns: repeat(3, 10rem);grid-template-rows: repeat(3, 10rem);gap: 0.5rem;/* 设置所有项目在容器水平对方方式 *//* justify-content: start; *//* justify-content: end; *//* justify-content: center; *//* 设置所有项目在容器垂直对方方式 *//* align-content: start; *//* align-content: end; *//* align-content: center; */place-content: center center; /* 所有项目在容器对齐方式 *//* 设置所有项目在单元格/网格区域水平对方方式 */justify-items: start;justify-items: end;justify-items: center;/* 设置所有项目在单元格/网格区域垂直对方方式 */align-items: start;align-items: end;align-items: center;place-items: center center; /* 所有项目在单元格格/网格区域对齐方式 */}.item {width: 5rem;height: 5rem;background-color: #df93f7;}/* 设置单个项目在单元格/网格区域对齐方式 */.item.i2 {background-color: #93e8f7;/* 水平方向 *//* justify-self: start; */justify-self: end;/* justify-self: center; *//* 垂直方向 *//* align-self: start; */align-self: end;/* align-self: center; */place-self: end end;}</style></head><body><!-- Grid容器 --><div class="container"><div class="item i1">item1</div><div class="item i2">item2</div><div class="item i3">item3</div><div class="item i4">item4</div><div class="item i5">item5</div><div class="item i6">item6</div></div></body></html>

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号