本次我们需要设计的布局是这样样子,这个很想一个邮件系统的基本布局;
● 首先我们生成基础代码,基础代码很简单,不用过多解释
<!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>App Layout</title><style>* {margin: 0;padding: 0;box-sizing: border-box;}body {font-family: sans-serif;color: #343a40;font-size: 23px;}nav {background-color: #343a40 ;}menu {background-color: #7048e8;color: #fff;}section {background-color: #e9ecef;;}</style>
</head>
<body><nav>Nav</nav><menu>Menu</menu><section>Inbox</section><main>Email View</main><aside>Additional info</aside>
</body>
</html>
● 我们分析一下下图,这个一个两行四列的一个布局,当然,我们肯定会选择使用CSS grid去实现这个布局,生成一个两行四列的一个布局
body {font-family: sans-serif;color: #343a40;font-size: 23px;display: grid;grid-template-columns: 80px 400px 1fr 250px;grid-template-rows: 80px 1fr;
}
● 对比实现的图,我们想让body的高度占据整个视图
height: 100vh;
● 之后我们想要我们的导航占据整列,菜单占据整行
nav {background-color: #343a40 ;grid-row: 1 / -1;color: white;}menu {background-color: #7048e8;color: #fff;grid-column: 2 / -1;}
● 接着我们将字体居中并设计一下字体
● 接着我们给这些元素添加一下填充
nav, menu, section, main, aside {padding-top: 20px;}
这样一个布局就已经出来了,剩下的部分我们在下一节再展现吧!