批改状态:合格
老师批语:很好!Grid 是一个非常强大的 CSS 布局方案,可以任意组合不同的网格,做出各种各样的布局!

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>0628作业:放php.cn课程列表</title><style>* {margin: 0;padding: 0;box-sizing: border-box;}a {text-decoration: none;font-size: 14px;color: #666;}/* 大容器 */.courses-list {width: 1200px;height: 646px;display: grid;margin: auto;}/* 课程大标题 */.courses-list > .course-title {color: #555;text-align: center;height: 60px;line-height: 60px;}/* 课程列表 */.courses-list > .container {display: grid;grid-template-columns: repeat(5, 1fr);grid-template-rows: repeat(3, 1fr);}.courses-list > .container > .course {width: 217px;height: 166px;/* background-color: violet; */border-radius: 5%;box-shadow: 0 0 10px #888;place-self: start center;}.courses-list > .container > .course.first {grid-row: span 2;height: 362px;}/* 课程图片 */.courses-list > .container > .course img {width: 100%;border-radius: 5%;}.courses-list > .container > .course .desc {display: grid;place-content: space-between;min-height: 84px;background-color: white;border-radius: 5%;padding: 10px;position: relative;top: -42px;}.courses-list > .container > .course .desc span {color: #555;font-size: smaller;}.courses-list > .container > .course .desc a span {background-color: #939999;color: white;padding: 1px;border-radius: 2px;}.courses-list > .container > .course .desc:hover {min-height: 130px;position: relative;cursor: pointer;top: -90px;/* 添加css过度效果 */transition: top 0.5s;}</style></head><body><div class="courses-list"><h3 class="course-title">PHP入门精品课程</h3><!-- 课程列表,用grid布局 --><div class="container"><div class="course first"><a href=""><img src="img/first.jpg" alt="" /></a></div><div class="course"><a href=""><img src="img/img01.png" alt="" /></a><div class="desc"><a href=""><span>30分钟</span>学会布局网站布局</a><span>6W+播放</span></div></div><div class="course"><a href=""><img src="img/img02.jpg" alt="" /></a><div class="desc"><a href=""><span>30分钟</span>学会布局网站布局</a><span>6W+播放</span></div></div><div class="course"><a href=""><img src="img/img03.jpg" alt="" /></a><div class="desc"><a href=""><span>30分钟</span>学会布局网站布局</a><span>6W+播放</span></div></div><div class="course"><a href=""><img src="img/img04.jpg" alt="" /></a><div class="desc"><a href=""><span>30分钟</span>学会布局网站布局</a><span>6W+播放</span></div></div><div class="course"><a href=""><img src="img/img05.jpg" alt="" /></a><div class="desc"><a href=""><span>30分钟</span>学会布局网站布局</a><span>6W+播放</span></div></div><div class="course"><a href=""><img src="img/img06.jpeg" alt="" /></a><div class="desc"><a href=""><span>30分钟</span>学会布局网站布局</a><span>6W+播放</span></div></div><div class="course"><a href=""><img src="img/img07.jpg" alt="" /></a><div class="desc"><a href=""><span>30分钟</span>学会布局网站布局</a><span>6W+播放</span></div></div><div class="course"><a href=""><img src="img/img08.jpg" alt="" /></a><div class="desc"><a href=""><span>30分钟</span>学会布局网站布局</a><span>6W+播放</span></div></div><div class="course"><a href=""><img src="img/img09.jpg" alt="" /></a><div class="desc"><a href=""><span>30分钟</span>学会布局网站布局</a><span>6W+播放</span></div></div><div class="course"><a href=""><img src="img/img10.jpg" alt="" /></a><div class="desc"><a href=""><span>30分钟</span>学会布局网站布局</a><span>6W+播放</span></div></div><div class="course"><a href=""><img src="img/img11.jpg" alt="" /></a><div class="desc"><a href=""><span>30分钟</span>学会布局网站布局</a><span>6W+播放</span></div></div><div class="course"><a href=""><img src="img/img12.jpg" alt="" /></a><div class="desc"><a href=""><span>30分钟</span>学会布局网站布局</a><span>6W+播放</span></div></div><div class="course"><a href=""><img src="img/img13.jpg" alt="" /></a><div class="desc"><a href=""><span>30分钟</span>学会布局网站布局</a><span>6W+播放</span></div></div></div></div></body></html>
运行效果图
3.2 常用属性
/** 定义网格布局 ** /display: grid;/*设置5列*/grid-template-columns: 100px 100px 100px 100px 100px;/*简写 */grid-template-columns: repeat(5, 100px);/ *设置3行 */grid-template-rows: 100px 100px 100px;/*简写*/grid-template-rows: repeat(3, 100px);
.container > .item:first-of-type {background-color: lightcoral;/*grid-column-start: 1;grid-column-end: 2;grid-row-start: 1;grid-row-end: 2; *//* grid-column-start: 3;grid-column-end: 4;grid-row-start: 2;grid-row-end: 3; *//* 默认总是跨一行或一列 *//* grid-column-start: 3;grid-row-start: 2; *//* 将项目放置到一个网格区域中,网格区域只能是矩形区域 *//* grid-column-start: 2;grid-column-end: 4;grid-row-start: 2;grid-row-end: 4; *//* 行与列的跨越 *//* grid-column-start: 2;grid-column-end: span 2;grid-row-start: 2;grid-row-end: span 2; *//* 简化 *//* grid-column: 起始列号 / 结束列号;grid-row: 起始行号 / 结束行号 *//* grid-column: 2 / 4;grid-row: 2 / 4; *//* 跨越行和列简写 *//* grid-column: 2 / 4;grid-row: 2 / span 2; *//* 跨越整行 *//* grid-column: 1 / 4; *//* grid-column: 1 / span 3; *//* grid-column: 2 / 4; *//* grid-column: -1 / -3; *//* 充满整个容器 *//* grid-column: 1 / span 3;grid-row: 1 / span 3; *//* 根据项目的当前默认位置进行简化 *//* grid-column: span 3;grid-row: span 3; *//* 想写得更加的直观 *//* grid-column-start: 1; */grid-column-end: span 3;/* grid-row-start: 1; */grid-row-end: span 3;/*项目在grid容器中的对齐方案*//* 当容器在存在剩余空间的时候,才有意义 *//* place-content: 垂直方向对齐方式 水平方向对齐方式; *//* 剩余空间分配方案1: 在顶部和左侧进行分配,简单的理解为二边分配 *//* 垂直居中, 水平居左 *//* place-content: center start; *//* 垂直居上, 水平居中 *//* place-content: start center; *//* 垂直,水平全部居中 *//* place-content: center center; *//* 垂直,水平全部居中 简写 */place-content: center;/* 剩余空间分配方案2: 在每个单元格之间进行分配 *//* 垂直方向二端对齐, 水平分散对齐 */place-content: space-between space-around;/* 垂直分散对齐,水平平均对齐 */place-content: space-around space-evenly;/*项目在 grid 单元格中的对齐方案*//* place-items: 垂直对齐方式 水平对齐方式; *//* 项目在grid单元格中的对齐方案 *//* place-items: 垂直对齐方式 水平对齐方式; */place-items: strech;/* 关键字 *//* place-items: auto;place-items: normal; *//* 垂直居中,水平居左 *//* place-items: center start; *//* 垂直,水平都居中 *//* place-items: center center; */place-items: center;/* 垂直居中,水平拉伸,单元格不能定义宽度,不然看不到效果*/place-items: center stretch;/*项目在 grid 网格区域中的对齐方案//* 网格区域,就是一个或多个单元格组成的矩形空间 */grid-template-columns: repeat(3, 1fr);grid-template-rows: repeat(3, 1fr);/* 单元格垂直水平居中整体对齐 */place-items: center;/* 设置行列间隙 *//* row-gap: 5px;column-gap: 5px; *//* 行列相等 简写 *//* gap: 5px; *//* 行10px 列5px *//* gap:行间距 列间距 */gap: 10px 5px;
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号