day30—使用Flexbox和CSS Grid实现高效布局实践
转行学开发,代码100天——2018-04-15
(今天是代码开发的第30天,但是代码记录有些滞后,尽快补上。日后要严格执行,避免学习进度和内容相对滞后。)
今天,记录“前端大全”里分享的一篇关于利用Flexbox和CSS Grid实现高效布局的案例。
原文来源:葡萄城控件
www.cnblogs.com/powertoolsteam/p/combine-flexbox-and-css-grids-for-layouts.html
关于Flexbox前期学习笔记已经介绍过其基本用法。再添加一篇介绍文章:
flexbox-CSS3弹性盒模型flexbox布局完整版教程
一方面,使用Flexbox可以使元素对齐排列变得更加容易,另一方面,浏览器逐渐增加对CSS Grid的布局支持,使其为网页设计带来一定的便利。通过使用Flexbox 和CSS Grid均能实现网页布局设计,本次实践是组合两者工具,实现较复杂页面的布局设计。
对于下图的页面布局

一.用Flexbox 实现的布局
HTML:cotainer(header+wraper+footer)
<div class="container">
<!--header start-->
<header>
<nav>
<ul>
<li><a href="#">LOGO</a></li>
<li><a href="#">CONTACT</a></li>
<li><a href="#">CONTACT</a></li>
</ul>
</nav>
<span class="login">
<a href="#">Login</a>
</span> </header>
<!--header end --> <!--wrapper start--> <div class="wrapper">
<side class="sidebar">
<h3>Recent Posts</h3>
<ul>
<li><a href="#">page one</a></li>
<li><a href="#">page two</a></li>
<li><a href="#">page three</a></li>
</ul> </side>
<section class="main">
<h2>Flexbox Layout</h2>
<p>fasdgabadga<br/><br/><br/>
<img src="img/8.jpg">
</p>
<br/><br/><br/>
</section>
</div>
<!--wrapper end--> <!--footer start-->
<footer>
<h3>Flexbox Layout Example</h3>
<p>© xxxx</p>
</footer>
<!--footer end-->
</div>
<style type="text/css">
*{
margin:;
padding:; }
ul li{
list-style: none;
color: #fff;
}
a{
text-decoration: none;
color: #fff;
}
.container{
display: flex;
flex-direction: column;
width: 80%;
height: 100%;
margin-left: 10%;
}
header{
padding:15px;
margin-bottom: 40px;
display: flex;
justify-content: space-between;
/*border:1px solid red;*/
background: #1f1e23;
}
nav ul{
display: flex;
flex-direction: row;
margin-left: 20px;
}
nav ul li{
/*background: #ccc;*/
width: 100px;
height: 30px;
line-height: 30px;
text-align: center; }
nav ul li:hover{
background: #ccc;
color: #000;
}
.login{
width: 60px;
height: 30px;
background: #0093ff;
text-align: center;
line-height: 30px;
border-radius: 14px; }
.wrapper{
display: flex;
flex-direction: row;
color: #000;
border:1px solid green;
}
.main{
flex:;
margin-right: 60px;
}
.sidebar{
flex:;
color: #000;
}
.sidebar ul {
margin-left: 0px; }
.sidebar a{
color: #000;
} footer{
/*border:1px solid black;*/
background: #1f1e23;
text-align: center;
bottom:;
color: #fff;
height: 60px;
line-height: 60px; } </style>
基本布局效果如下:

二.用CSS Grid方式实现
未完,待续。。。。
day30—使用Flexbox和CSS Grid实现高效布局实践的更多相关文章
- 如何使用Flexbox和CSS Grid,实现高效布局
CSS 浮动属性一直是网站上排列元素的主要方法之一,但是当实现复杂布局时,这种方法不总是那么理想.幸运的是,在现代网页设计时代,使用 Flexbox 和 CSS Grid 来对齐元素,变得相对容易起来 ...
- 如何使用 Flexbox 和 CSS Grid,实现高效布局
CSS 浮动属性一直是网站上排列元素的主要方法之一,但是当实现复杂布局时,这种方法不总是那么理想.幸运的是,在现代网页设计时代,使用 Flexbox 和 CSS Grid 来对齐元素,变得相对容易起来 ...
- 你不需要基于 CSS Grid 的栅格布局系统
在过去的几个星期里,我开始看到基于 CSS Grid 的布局框架和栅格系统的出现.我们惊讶它为什么出现的这么晚.但除了使用 CSS Grid 栅格化布局,我至今还没有看到任何框架能提供其他有价值的东西 ...
- CSS Grid 读书笔记
基本概念 MDN上的解释是这样的 CSS Grid Layout excels at dividing a page into major regions or defining the relati ...
- 【CSS】340- 常用九宫格布局的几大方法汇总
对,就是类似这样的布局~ 目录 1 margin负值实现 2 祖父和亲爹的里应外合 3 换个思路 - li生个儿子帮大忙 4 借助absolute方位值,实现自适应的网格布局 5 cloumn多 ...
- CSS Grid 布局完全指南(图解 Grid 详细教程)
CSS Grid 布局是 CSS 中最强大的布局系统.与 flexbox 的一维布局系统不同,CSS Grid 布局是一个二维布局系统,也就意味着它可以同时处理列和行.通过将 CSS 规则应用于 父元 ...
- CSS Grid 布局
CSS Grid 布局是 CSS 中最强大的布局系统.与 flexbox 的一维布局系统不同,CSS Grid 布局是一个二维布局系统,也就意味着它可以同时处理列和行.通过将 CSS 规则应用于 父元 ...
- CSS Grid布局入门
相信大家都比较熟悉flex布局了,最近有空研究了波grid布局,感觉虽然兼容性还不是太高,应用不是太普遍,但是功能非常强大.未来应该是grid+flex为主流,grid是二维布局,很灵活,适合整体构架 ...
- CSS Grid布局指南
简介 CSS Grid布局 (又名"网格"),是一个基于二维网格布局的系统,主要目的是改变我们基于网格设计的用户接口方式.如我们所知,CSS 总是用于网页的样式设置,但它并没有起到 ...
随机推荐
- Linux中 xargs 命令用法
xargs命令: xargs命令是给其他命令传递参数的一个过滤器,也是组合多个命令的一个工具. 1.它擅长将标准输入数据转换成命令行参数,xargs能够处理管道或者stdin并将其转换成特定命令的命令 ...
- [2019杭电多校第一场][hdu6583]Typewriter(后缀自动机&&dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6583 大致题意是说可以花费p在字符串后添加一个任意字符,或者花费q在字符串后添加一个当前字符串的子串. ...
- Angular 组件通讯方式
(一)父子组件 输入/输出属性 关键词 Input,Output,EventEmitter. 父子组件信息信息,分为 (1)子组件向父组件传递 (2)父组件向子组件传递 (二)模版变量与 @V ...
- 基于 Python 的自定义分页组件
基于 Python 的自定义分页组件 分页是网页中经常用到的地方,所以将分页功能分出来,作为一个组件可以方便地使用. 分页实际上就是不同的 url ,通过这些 url 获取不同的数据. 业务逻辑简介 ...
- Dynamic Mapping和常见字段类型
原文:Dynamic Mapping和常见字段类型 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn. ...
- TCP/IP详解学习笔记(3)IP协议ARP协议和RARP协议
把这三个协议放到一起学习是因为这三个协议处于同一层,ARP协议用来找到目标主机的Ethernet网卡Mac地址,IP则承载要发送的消息.数据链路层可以从ARP得到数据的传送信息,而从IP得到要传输的数 ...
- JAVA一个文件写多个类
JAVA一个文件写多个类,并且是同级类,需注意: 在一个.java文件中可以有多个同级类, 其修饰符只可以public/abstract/final/和无修饰符 public修饰的只能有一个,且必须 ...
- kali优化配置(2)
下次再安Java吧...心累小赵在线哭泣... 0x01 安装显卡驱动 安装GPU,加速密码破解: grub--kali的启动器 0x02 并发线程限制 ulimit由于限制当前shell内进程的资源 ...
- SSM架构 (Spring 5.0.2)添加Jackson
第一步添加jsckson的包 <dependency> <groupId>javax.annotation</groupId> <artifactId> ...
- AOP技术介绍--(AOP技术基础)
2.1 AOP技术起源 AOP技术的诞生并不算晚,早在1990年开始,来自Xerox Palo Alto Research Lab(即PARC)的研究人员就对面向对象思想的局限性进行了分 ...