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 总是用于网页的样式设置,但它并没有起到 ...
随机推荐
- WOJ#3882 旅行问题(POI2004)
描述 John打算驾驶一辆汽车周游一个环形公路.公路上总共有n车站,每站都有若干升汽油(有的站可能油量为零),每升油可以让汽车行驶一千米.John必须从某个车站出发,一直按顺时针(或逆时针)方向走遍所 ...
- 简单易用的leetcode开发测试工具(npm)
描述 最近在用es6解leetcode,当问题比较复杂时,有可能修正了新的错误,却影响了前面的流程.要用通用的测试工具,却又有杀鸡用牛刀的感觉,所以就写了个简单易用的leetcode开发测试工具,分享 ...
- django 中间件的使用??
django 中的中间件(middleware),在django中,中间件其实就是一个类,在请求到来和结束后,django会根据自己的规则在合适的时机执行中间件中相应的方法. 在django项目的se ...
- 关于AndroidStudio 配置的默认路径的修改
AndroidStudio的配置默认路径在 C:\Users\用户名\.AndroidStudio3.0 下,在这里会有一个缺点是C盘会常常空间不够用,所以我就想改到其他盘的.看图: Android ...
- RocksDB存储引擎测试
一:安装搭建(两个节点都要安装) yum install http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-r ...
- express 设置允许跨域访问
//demo const express = require('express'); const app = express(); //设置允许跨域访问该服务. app.all(’’, functio ...
- Python2 安装教程
目录 1. 推荐阅读 2. 安装包下载 3. 安装步骤 1. 推荐阅读 Python基础入门一文通 | Python2 与Python3及VSCode下载和安装.PyCharm破解与安装.Python ...
- 一、IIS性能检测与网站管理
一.性能监视器 1.Windows Server自带的性能监视器.(开始 运行 perfmon ) 另一种方式打开 Performance Monitor 点击Windows+R,在Run中输入per ...
- python基础--内置函数filter,reduce
movie_people=["sb+_alex","sb_wupeiqi","han"] # def filter_test(array): ...
- [SDOI2015]寻宝游戏(LCA,set)
[SDOI2015]寻宝游戏 题目描述 小B最近正在玩一个寻宝游戏,这个游戏的地图中有N个村庄和N-1条道路,并且任何两个村庄之间有且仅有一条路径可达.游戏开始时,玩家可以任意选择一个村庄,瞬间转移到 ...