批改状态:合格
老师批语:好
flex实现pc端三列布局;
```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
/ 清除样式 /
{
margin: 0;
padding: 0;
box-sizing: border-box;
}
/ 设置a标签默认 /
a {
text-decoration: none;
color: #666;
}
/ 将整个body转为flex元素 /
body {
display: flex;
flex-flow: column nowrap;
}
/ 设置header高度为50个像素将其转为flex元素垂直居中对齐/
header {
height: 50px;
display: flex;
align-items: center;
}
/ 设置不允许放大允许放大宽度100像素,字体居中,内边距上下10像素 左右自适应 /
header a {
flex: 0 1 100px;
text-align: center;
padding: 10px auto;
}
/ 设置第一个a标签LOGO右外边框50像素 /
header a:first-of-type {
margin-right: 50px;
}
/ 设置最后一个a标签左外边框自动计算剩余空间 /
header a:last-of-type {
margin-left: auto;
}
/ 设置除第一个a标签指针效果 /
header a:hover:not(:first-of-type) {
color: #f00;
}
/ 转为flex元素最小高度500像素水平两端对齐 /
.container {
display: flex;
min-height: 500px;
justify-content: space-evenly;
}
/ 设置不允许放大不允许缩小宽度200像素 /
.container aside {
flex: 0 0 200px;
}
/ 设置不允许放大不允许缩小宽度600像素 /
.container main {
flex: 0 0 600px;
}
/ 设置高度65像素边框1像素实线转为flex元素主轴垂直居中文本居中 */
footer {
height: 65px;
border: 1px solid;
display: flex;
flex-flow: column nowrap;
text-align: center;
}
</style>
</head>
<body>
<header>
<a href="">LOGO</a>
<a href="">首页</a>
<a href="">视频教程</a>
<a href="">入门教程</a>
<a href="">社区问答</a>
<a href="">技术文章</a>
<a href="">资源下载</a>
<a href="">工具下载</a>
<a href="">PHP培训</a>
<a href="">登陆</a>
</header>
<div class="container">
<aside>左</aside>
<main>主</main>
<aside>右</aside>
</div>
<footer>
<p>php中文网:公益在线php培训,帮助PHP学习者快速成长!</p>
<p>
Copyright 2014-2020 https://www.php.cn/ All Rights Reserved |
皖B2-20150071-9 皖公网安备 34010402701654号
</p>
<p>座机号码:0551-64933227 安徽省合肥市政务新区置地广场D座2101</p>
</footer>
</body>
</html>
效果截图:2. flex实现(m.php.cn)首页```html<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Document</title><link rel="stylesheet" href="0821.css" /></head><body><div class="space"></div><header><span class="iconfont"><a href="#"></a></span><div class="logo"><a href="#"><img src="images/logo.png" alt="" /></a></div><span class="iconfont"><a href="#"></a></span></header><div class="banner"><a href=""></a><img src="images/banner.jpg" alt="" /></a></div><nav><li><a href="#"><img src="images/html.png" alt="" /></a><a href="#">html/css</a></li><li><a href="#"><img src="images/JavaScript.png" alt="" /></a><a href="#">JavaScript</a></li><li><a href="#"><img src="images/code.png" alt="" /></a><a href="#">服务器</a></li><li><a href="#"><img src="images/sql.png" alt="" /></a><a href="#">数据库</a></li><li><a href="#"><img src="images/app.png" alt="" /></a><a href="#">移动端</a></li><li><a href="#"><img src="images/manual.png" alt="" /></a><a href="#">手册</a></li><li><a href="#"><img src="images/tool2.png" alt="" /></a><a href="#">工具</a></li><li><a href="#"><img src="images/live.png" alt="" /></a><a href="#">直播</a></li></nav><main><h3>推荐课程</h3><ul><div class="curriculum"><a href="#"><img src="images/5d2426f409839992.jpg" alt=""></a><a href="#"><img src="images/5d242759adb88970.jpg" alt=""></a></div><div class="recommend"><a href="#"><img src="images/5d2941e265889366.jpg" alt=""><li>CI框架30分钟极速入门<p><span>中级</span><span>67790次播放</span></p></li></a><a href=""><img src="images/5aa23f0ded921649.jpg" alt=""><li>2018前端入门_HTML5<p><span>初级</span><span>353557次播放</span></p></li></a></div></ul></main><main><h3>最新更新</h3><div class="update"><a href="#"><img src="images/5f155b2f296de744.png" alt=""><li>《我的十年撸码生涯》公益直播课<p>主题:《十年撸码生涯:…</p><p><span>初级</span><span>1989次播放</span></p></li></a><a href=""><img src="images/5f0e62e427845643.png" alt=""><li>2天速成VueJS免费公益直播课<p>php中文网免费公益…</p><p><span>初级</span><span>5039次播放</span></p></li></a><a href=""><img src="images/5f3de03eaf461163.png" alt=""><li>PHP进阶篇-函数(玉女心经版)<p>函数就是实现特…</p><p><span>初级</span><span>644次播放</span></p></li></a><a href=""><img src="images/5eeb3345b206d506.jpg" alt=""><li>PHP代码整洁之道<p>"本课程参考自…</p><p><span>中级</span><span>5039次播放</span></p></li></a><a href=""><img src="images/5f36356fc6fb6293.png" alt=""><li>PHP字符串处理(玉女心经版)<p>字符串的处理…</p><p><span>初级</span><span>970次播放</span></p></li></a><a href=""><img src="images/5f36339d51421830.png" alt=""><li>PHP基本语法(玉女心经版)<p>PHP是在服务…</p><p><span>初级</span><span>1069次播放</span></p></li></a></div></main><main><h3>最新文章</h3><div class="article"><a href="#"><li>如何使用JavaScript lastIndexOf()方法<p>发布时间:2020-08-20</span></p></li><li><img src="images/2020082014393865760.jpg" alt=""></li></a><a href="#"><li>java idea实现类快捷生成接口方法<p>发布时间:2020-08-21</span></p></li><li><img src="images/5f3f95799dcfa120.jpg" alt=""></li></a><a href="#"><li>js实现滑动进度条<p>发布时间:2020-08-21</span></p></li><li><img src="images/2020082117330680098.jpg" alt=""></li></a><a href="#"><li>docker network命令详解<p>发布时间:2020-08-21</span></p></li><li><img src="images/5f3f91881804b920.jpg" alt=""></li></a><a href="#"><li>一起看看vue实现打地鼠小游戏<p>发布时间:2020-08-21</span></p></li><li><img src="images/2020082117235954205.jpg" alt=""></li></a></div></main><div class="space"></div><footer><li><a href="#"><span class="iconfont"></span></a><a href="#">首页</a></li><li><a href="#"><span class="iconfont"></span></a><a href="#">视频</a></li><li><a href="#"><span class="iconfont"></span></a><a href="#">社区</a></li><li><a href="#"><span class="iconfont"></span></a><a href="#">我的</a></li></footer></body></html>
CSS:
/*阿里云图标格式文件*/@font-face {font-family: "iconfont";src: url("/iconfont/iconfont.eot");src: url("/iconfont/iconfont.eot?#iefix") format("embedded-opentype"),url("/iconfont/iconfont.woff2") format("woff2"),url("/iconfont/iconfont.woff") format("woff"),url("/iconfont/iconfont.ttf") format("truetype"),url("/iconfont/iconfont.svg#iconfont") format("svg");}/*图标默认样式*/.iconfont {font-family: "iconfont" !important;font-size: 16px;font-style: normal;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;color: #fff;}/* 清除样式 */* {margin: 0;padding: 0;box-sizing: border-box;}/* 设置a标签默认样式 */a {text-decoration: none;color: #666;}/* 把整个视图分为宽高各一百份 */html {width: 100vw;height: 100vh;}/* 将整个页面转为flex格式并直线轴显示不换行,最小宽度360个像素,背景色灰色 */body {display: flex;flex-flow: column nowrap;min-width: 360px;background: #edeff0;}/* 页头取100份宽度,高度50像素,背景色黑色,转为flex,内边框上下0像素左右15像素,对齐方式平均对齐,交叉轴对齐方式居中,将页头设为浮动视图在顶部0 */header {width: 100vw;height: 50px;background: #000;display: flex;padding: 0 15px;justify-content: space-between;align-items: center;position: fixed;top: 0;}/* 转为弹性盒,2倍rem大小,主轴和交叉轴居中,外边距距左2% */header .iconfont {display: flex;font-size: 2rem;align-items: center;justify-content: center;margin-left: 2%;}/* 图标颜色 */header .iconfont a {color: #fff;}/* 图片70% */header .logo img {width: 70%;}/* 高度自适应 */.banner {height: auto;}/* 图片100% */.banner img {width: 100%;}/* 导航高度200像素,转为弹性盒,主轴水平显示可换行,交叉轴平均对齐,背景色白色 */nav {height: 200px;display: flex;flex-flow: row wrap;align-content: space-around;background: #fff;}/* 转为弹性盒,宽度25份,主轴垂直不换行,交叉轴居中 */nav li {display: flex;width: 25vw;flex-flow: column nowrap;align-items: center;}/* 图片50% */nav li img {width: 50%;}/* 第一个A标签文本居中 */nav li a:first-of-type {text-align: center;}/* 主体宽度100份,高度自适应,转为弹性盒,主轴垂直不换行,外边距距上2倍rem */main {width: 100vw;height: auto;display: flex;flex-flow: column nowrap;margin-top: 2rem;}/* 宽度100%,高度20像素,文本1.2倍rem,内边距全10像素,颜色浅黑 */main h3 {width: 100%;height: 20px;font-size: 1.2rem;padding: 10px;color: #888;}/* 转为弹性盒,主轴垂直不换行 */main ul {display: flex;flex-flow: column nowrap;}/* 宽度100份,转为弹性盒,主轴水平显示不换行,外边距距上15像素 */main ul .curriculum {width: 100vw;display: flex;flex-flow: row nowrap;margin-top: 15px;}/* 宽度49份,高度110像素,内边距全10像素 */main ul .curriculum a {width: 49vw;height: 110px;padding: 10px;}/* 宽度100%,高度90像素,允许放大允许缩小视图49份 */main ul .curriculum a img {width: 100%;height: 90px;flex: 1 1 49vw;}/* 宽度100份,转为弹性盒,主轴垂直显示不换行 */main ul .recommend {width: 100vw;display: flex;flex-flow: column nowrap;}/* 宽度94份,高度110像素,转为弹性盒,背景色白色,内边距全15像素,外边距上20像素左10像素 */main ul .recommend a {width: 94vw;height: 110px;display: flex;flex-flow: row nowrap;background: #fff;padding: 15px;margin-top: 20px;margin-left: 10px;}/* 图片40% */main ul .recommend a img {width: 40%;}/* 宽度55%,外边距左2%,1.1rem倍文本,颜色#999,转为弹性盒,主轴垂直显示不换行 */main ul .recommend a li {width: 55%;margin-left: 2%;font-size: 1.1rem;color: #999;display: flex;flex-flow: column nowrap;}/* 外边距上10%,0.8rem倍文本 */main ul .recommend a li p {margin-top: 10%;font-size: 0.8rem;}/* 0.6rem倍文本,内边距全3像素,转为行内块 */main ul .recommend a li p span {font-size: 0.9rem;padding: 3px;display: grid;}/* 第一个span:0.8rem倍文本,颜色#fff,背景#666,宽度45像素,文本居中,边框圆角10像素,左浮动 */main ul .recommend a li p span:first-of-type {font-size: 0.8rem;color: #fff;background: #666;width: 45px;text-align: center;border-radius: 10px;float: left;}/* 宽度100份,转为弹性盒,主轴垂直显示不换行,外边距上10像素 */main .update {width: 100vw;display: flex;flex-flow: column nowrap;margin-top: 10px;}/* 宽度94份,高度110像素,转为弹性盒,主轴水平显示不换行,背景色#fff,内边距全15像素,外边距上20像素左10像素 */main .update a {width: 94vw;height: 110px;display: flex;flex-flow: row nowrap;background: #fff;padding: 15px;margin-top: 20px;margin-left: 10px;}/* 图片40% */main .update a img {width: 40%;}/* 宽度55%,外边距左2%,1rem倍文本,颜色#999,转为弹性盒,主轴垂直显示不换行 */main .update a li {width: 55%;margin-left: 2%;font-size: 1rem;color: #999;display: flex;flex-flow: column nowrap;}/* 外边距上2%,0.7rem倍文本 */main .update a li p {margin-top: 2%;font-size: 0.7rem;}/* 0.9rem倍文本,内边距全3像素,转为行内块 */main .update a li p span {font-size: 0.9rem;padding: 3px;display: grid;}/* 第一个span:0.8rem倍文本,颜色#fff,背景色#666,宽度45像素,文本居中,边框圆角10像素,左浮动 */main .update a li p span:first-of-type {font-size: 0.8rem;color: #fff;background: #666;width: 45px;text-align: center;border-radius: 10px;float: left;}/* 最后一个span:宽度45%,外边距左自适应 计算全部左边距 */main .update a li p span:last-of-type {width: 45%;margin-left: auto;}/* 宽度100份,转为弹性盒,主轴垂直显示不换行,外边距上10像素 */main .article {width: 100vw;display: flex;flex-flow: column nowrap;margin-top: 10px;}/* 宽度94份,高度110像素,转为弹性盒,主轴水平显示不换行,背景色#fff,内边距全15像素,外边距上20像素左10像素 */main .article a {width: 94vw;height: 110px;display: flex;flex-flow: row nowrap;background: #fff;padding: 15px;margin-top: 20px;margin-left: 10px;}/* 图片宽100%高100% */main .article a li img {width: 100%;height: 100%;}/* 宽度50%,外边距左2%,1倍rem文本,颜色#999,转为弹性盒,主轴垂直显示不换行 */main .article a li {width: 50%;margin-left: 2%;font-size: 1rem;color: #999;display: flex;flex-flow: column nowrap;}/* 外边距上2%,0.7rem倍文本 */main .article a li p {margin-top: 2%;font-size: 0.7rem;}/* 0.9倍文本,内边距全3像素,转为行内块 */main .article a li p span {font-size: 0.9rem;padding: 3px;display: grid;}/* 第一个span:0.8倍文本,颜色#fff,背景色#666,宽度45像素,文本居中,边框圆角10像素,左浮动 */main .article a li p span:first-of-type {font-size: 0.8rem;color: #fff;background: #666;width: 45px;text-align: center;border-radius: 10px;float: left;}/* 最后一个span:宽度25%,外边距左自适应 */main .article a li p span:last-of-type {width: 25%;margin-left: auto;}/* 为footer占位:外边距上50像素 */.space {margin-top: 50px;}/* 页尾:宽度100份,转为弹性盒,主轴水平显示不换行,转为浮动以视图底部0的位置,上边框1像素实线颜色#CCC,背景色#edeff0 */footer {width: 100vw;display: flex;flex-flow: row nowrap;position: fixed;bottom: 0;border-top: 1px solid #ccc;background: #edeff0;}/* 宽度25份,高度50像素,取消li开头自带的.,转为弹性盒,主轴垂直显示不换行,交叉轴居中,主轴居中 */footer li {width: 25vw;height: 50px;list-style: none;display: flex;flex-flow: column nowrap;align-items: center;justify-content: center;}/* 颜色#999 */footer li a {color: #999;}/* 图标1.4rem倍文本,颜色#ccc */footer li .iconfont {font-size: 1.4rem;color: #ccc;}
效果图:



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