CSS3 flex布局之快速实现BorderLayout布局


Posted in HTML / CSS onDecember 03, 2015

学习完flex的布局模式之后,我们趁热打铁,来实现一个BoxLayout布局.什么是BoxLayout布局?那我们先上一个图看看

CSS3 flex布局之快速实现BorderLayout布局

BoxLayout布局写过后端UI代码的编程者应该不陌生了,写前端的代码的也同样很熟悉,包括html的框架frame.但以往的CSS中使用float浮动来进行控制,控制起来相对来说是复杂一些,也需要加入更多的标签和代码.

看完这个界面,我们就可以着手写出标签的代码布局:

复制代码
代码如下:

.<div class="parent">
. <header>北</header>
. <aside class="left">东</aside>
. <div class="center">中</div>
. <aside class="righ">西</aside>
. <footer>南</footer>
.</div>
<code class="cls hljs cs">
代码很简单,就只有二级关系,当然也可以将parent这一父级去掉,将body来当做父级,除非有必要.</code>

那我们开始用CSS来实现BorderLayout,这里同样定义父级parent为flex容器,方向为从左至右,可以换行.

复制代码
代码如下:

..parent{
. display: flex;
. flex-direction: row;
. flex-wrap: wrap;
. text-align: center;
.}

接着设置flex项的布局模式,header,footer我们将其设置为flex-basis:100%;因为他们占据整行,而两个aside的宽度相等,center比两边的aside要宽,所以我们用flex-grow来设置他们的占据比例.
 

复制代码
代码如下:

.header, footer{
. flex-basis: %;
.}
..center{
. flex-grow: ;
.}
.aside{
. flex-grow:;
.}
<code class="cls hljs cs">
这样就实现了BorderLayout布局,是不是非常简单.不要忘记了,要给他们设定相应的高度,和背景色,不然看到的是一片白,以为没反应呢!我是这样设置的,作为参考</code>
..parent{
. display: flex;
. flex-direction: row;
. flex-wrap: wrap;
. text-align: center;
.}
.header,footer,aside,.center{
. padding: px;;
.}
..center,aside{
. min-height: px;
.}
.header, footer{
. flex-basis: %;
. min-height: px;
.}
.header{
. background-color: cadetblue;
.}
.footer{
. background-color: darkgrey;
.}
..center{
. flex-grow: ;
.}
.aside{
. flex-grow:;
. background-color: bisque;
.}
<code class="cls hljs cs">
最后测试OK!
</code>

解析四大Flex4布局方式

本文向大家介绍一下四个Flex4布局类的用法,它们分别是:BasicLayout、HorizontalLayout、TileLayout、VerticalLayout。

在学习Flex4的过程中,你会遇到Flex4布局的概念, 这里和大家分享一下,在FlexSDK4(Gumbo)的spark组件库里面增加了一个page:spark.layouts。其中包括了比较重要的四个Flex4布局类(class),请看下文详细介绍。

四种Flex4布局类概述

在FlexSDK4(Gumbo)的spark组件库里面增加了一个page:spark.layouts。其中包括了比较重要的四个Flex4布局类(class),分别是:BasicLayout、HorizontalLayout、TileLayout、VerticalLayout。

1、BasicLayoutFlex4布局:

(默认属性,当不指定定位后,则是绝对定位布局)

这是spark组件默认FlexSDK3的布局方式,即绝对定位布局。在FlexSDK3里面对应的是:layout="absolute"

2、HorizontalLayoutFlex4布局:

这是spark组件库里面的水平布局方式。在里面对应的是:layout="horizontal"

3、VerticalLayoutFlex4布局:

这是spark组件库里面的竖直布局方式。在FlexSDK3里面对应的是:layout="vertical"

4、TileLayoutFlex4布局:

这是spark组件库新增的布局方式,即格子布局方式。TileLayout布局方式可以说是HorizontalLayout和VerticalLayout结合的方式。

三水点靠木提醒大家还有一点是需要注意的:

paddingLeft、paddingRight、paddingTop、paddingBottom
这四个属性已经转移到了HorizontalLayout、VerticalLayout里面。这点也与FlexSDK3有些区别。也就是说,在spark组件中的容器,已经不具备paddingLeft、paddingRight、paddingTop、paddingBottom属性了。

HTML / CSS 相关文章推荐
纯CSS3编写的的精美动画进度条(无flash/无图像/无脚本/附源码)
Jan 07 HTML / CSS
关于CSS Tooltips(鼠标经过时显示)的效果
Apr 10 HTML / CSS
css3隔行变换色实现示例
Feb 19 HTML / CSS
纯CSS实现右侧底部悬浮效果(悬浮QQ、微信、微博、邮箱等联系方式)
Apr 24 HTML / CSS
CSS3 3D旋转rotate效果实例介绍
May 03 HTML / CSS
CSS3弹性盒模型flex box快速入门心得(必看篇)
May 24 HTML / CSS
使用Html5、CSS实现文字阴影效果
Jan 17 HTML / CSS
让IE支持HTML5的方法
Dec 11 HTML / CSS
HTML5实现动画效果的方式汇总
Feb 29 HTML / CSS
htnl5利用svg页面高斯模糊的方法
Jul 20 HTML / CSS
详解html5 postMessage解决跨域通信的问题
Aug 17 HTML / CSS
简单介绍 http请求响应参数、无连接无状态、MIME、状态码、端口、telnet、curl
Mar 31 HTML / CSS
深入浅析css3 中display box使用方法
Nov 25 #HTML / CSS
CSS3 display知识详解
Nov 25 #HTML / CSS
详解CSS3选择器的使用方法汇总
Nov 24 #HTML / CSS
深入浅析css3 border-image边框图像详解
Nov 24 #HTML / CSS
基于css3 animate制作绚丽的动画效果
Nov 24 #HTML / CSS
基于Jquery和Css3代码制作可以缩放的搜索框
Nov 19 #HTML / CSS
基于CSS3实现图片模糊过滤效果
Nov 19 #HTML / CSS
You might like
php实现字符串首字母大写和单词首字母大写的方法
2015/03/14 PHP
php编译安装php-amq扩展简明教程
2016/06/25 PHP
PHP自带方法验证邮箱、URL、IP是否合法的函数
2016/12/08 PHP
php 函数使用可变数量的参数方法
2017/05/02 PHP
php分享朋友圈的实现代码
2019/02/18 PHP
ThinkPHP5与单元测试PHPUnit使用详解
2020/02/23 PHP
javascript dom 基本操作小结
2010/04/11 Javascript
Node.js事件循环(Event Loop)和线程池详解
2015/01/28 Javascript
javascript实现复选框选中属性
2015/03/25 Javascript
jQuery、zepto、js常用小技巧
2017/02/12 Javascript
vue实现留言板todolist功能
2017/08/16 Javascript
JavaScript你不知道的一些数组方法
2017/08/18 Javascript
laravel5.4+vue+element简单搭建的示例代码
2017/08/29 Javascript
Node 自动化部署的方法
2017/10/17 Javascript
详解vue2.0模拟后台json数据
2019/05/16 Javascript
vue.js 打包时出现空白页和路径错误问题及解决方法
2019/06/26 Javascript
jquery实现穿梭框功能
2021/01/19 jQuery
[10:39]DOTA2上海特级锦标赛音乐会纪录片
2016/03/21 DOTA
浅析Python中的多进程与多线程的使用
2015/04/07 Python
使用基于Python的Tornado框架的HTTP客户端的教程
2015/04/24 Python
在Python中处理时间之clock()方法的使用
2015/05/22 Python
Python实现将通信达.day文件读取为DataFrame
2018/12/22 Python
树莓派采用socket方式文件传输(python)
2019/06/22 Python
Python大数据之网络爬虫的post请求、get请求区别实例分析
2019/11/16 Python
解决Pytorch自定义层出现多Variable共享内存错误问题
2020/06/28 Python
使用HTML5进行SVG矢量图形绘制的入门教程
2016/02/19 HTML / CSS
英国家居装饰品、户外家具和玻璃器皿购物网站:Rinkit.com
2019/11/04 全球购物
会计实习期自我鉴定
2013/10/06 职场文书
产品质量承诺书范文
2014/03/27 职场文书
股东出资证明书(正规版)
2014/09/24 职场文书
商务宴请邀请函范文
2015/02/02 职场文书
二审答辩状范文
2015/05/22 职场文书
担保书怎么写 ?
2019/04/22 职场文书
Html5生成验证码的示例代码
2021/05/10 Javascript
分享Python获取本机IP地址的几种方法
2022/03/17 Python
唤醒紫霞仙子,携手再游三界!大话手游X《大话西游》电影合作专属剧情任务
2022/04/03 其他游戏