用Flex实现常见的几种布局
用Flex实现常见的几种布局
1.水平,垂直居中。

<style type="text/css">
.container{
display: flex;
width: 300px;
height: 300px;
border: 1px solid red;
align-items: center; /* 垂直居中*/
justify-content: center; /* 水平居中*/
}
.item{
width: 60px;
height: 60px;
border: 1px solid black;
text-align: center;
background: blue;
}
</style> <div class="container">
<div class="item item1"></div>
</div>
2. 左边固定宽度,右边占满宽度

<style type="text/css">
.container{
display: flex;
width: %;
height: 300px;
border: 1px solid red;
}
.item1{
width: 100px;
background: blue;
}
.item2{
flex: ;
}
</style> <div class="container">
<div class="item item1"></div>
<div class="item item2"></div>
</div>
3.顶部固定高度,下部占满剩余高度

<style type="text/css">
.container{
display: flex;
width: %;
height: 300px;
border: 1px solid red;
flex-direction: column;
}
.item1{
width: %;
height: 20px;
background: blue;
}
.item2{
width: %;
flex: ;
background: #F44336;
}
</style> <div class="container">
<div class="item item1"></div>
<div class="item item2"></div>
</div>
4.顶部,底部固定高度,中间占满剩余高度

<style type="text/css">
.container{
display: flex;
width: %;
height: 300px;
border: 1px solid red;
flex-direction: column;
}
.item1{
width: %;
height: 20px;
background: blue;
}
.item2{
width: %;
flex: ;
background: #F44336;
}
.item3{
width: %;
height: 20px;
background: blue;
}
</style> <div class="container">
<div class="item item1"></div>
<div class="item item2"></div>
<div class="item item3"></div>
</div>
5.中部占满剩余高度,此元素内部采用"左边固定宽度,右边占满剩余宽度"

<style type="text/css">
.container{
display: flex;
width: %;
height: 600px;
border: 1px solid red;
flex-direction: column;
}
.header{
height: 100px;
width: %;
background: #3be662;
}
.body{
flex: ;
width: %;
background: red;
display: flex;
flex-direction: row;
}
.footer{
width: %;
height: 100px;
background: blue;
}
.left{
width: 100px;
background: #d7b052;
}
.right{
flex: ;
background: #b1c2bd;
} </style> <div class="container">
<div class="header"></div>
<div class="body">
<div class="left"></div>
<div class="right"></div>
</div>
<div class="footer"></div>
</div>
Flex兼容性写法
1.盒子的兼容性写法:
.box{
display: -webkit-flex; /* 新版本语法: Chrome 21+ */
display: flex; /* 新版本语法: Opera 12.1, Firefox 22+ */
display: -webkit-box; /* 老版本语法: Safari, iOS, Android browser, older WebKit browsers. */
display: -moz-box; /* 老版本语法: Firefox (buggy) */
display: -ms-flexbox; /* 混合版本语法: IE 10 */
}
2.子元素的兼容性写法:
.flex1 {
-webkit-flex: ; /* Chrome */
-ms-flex: /* IE 10 */
flex: ; /* Spec - Opera 12.1, Firefox 20+ */
-webkit-box-flex: /* 老版本语法 - iOS 6-, Safari 3.1-6 */
-moz-box-flex: ; /* 老版本语法 - Firefox 19- */
}
最后附上各个浏览器对Flex的支持程度:

用Flex实现常见的几种布局的更多相关文章
- HTML的三种布局:DIV+CSS、FLEX、GRID
Div+css布局 也就是盒子模型,有W3C盒子模型,IE盒子模型.盒子模型由四部分组成margin.border.padding.content. 怎么区别这两种模型呢,区别在于w3c中的width ...
- Android开发之基本控件和详解四种布局方式
Android中的控件的使用方式和iOS中控件的使用方式基本相同,都是事件驱动.给控件添加事件也有接口回调和委托代理的方式.今天这篇博客就总结一下Android中常用的基本控件以及布局方式.说到布局方 ...
- 常见div+css网页布局(float,absolute)
网页布局-常见 1, float布局 (1)常规方法 <div id="warp"> <div id="column&quo ...
- 【转】Android UI 五种布局
在一个Android应用中,Layout是开发中的一个很重要环节,Layout是组成UI不可缺少的一部分. ## Android UI 核心类 在Android应用构建UI的方法有以下几种: 单纯使用 ...
- Extjs--12种布局方式
按照Extjs的4.1的文档来看,extjs的布局方式大致有12种,下面一一介绍,有些代码就是文档中的. 1.Border 边界布局 border布局,最多可以将页面分割为"东南西北中&qu ...
- CSS 常见的8种选择器 和 文本溢出问题
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>c ...
- 精华阅读第 13 期 |常见的八种导致 APP 内存泄漏的问题
本期是移动开发精英俱乐部的第13期文章,都是以技术为主,所以这里就不过多的进行赘述了,我们直接看干货内容吧!本文系ITOM管理平台OneAPM整理. 实际项目中的MVVM(积木)模式–序章 导读:开篇 ...
- Android-基本控件和详解四种布局方式
转自:https://www.cnblogs.com/ludashi/p/4883915.html 一.常用基本控件 1.TextView 看到Android中的TextView, 我不禁的想到了iO ...
- Flex元素布局规则总结,以及布局和容器
一.Flex中的元素分类从功能层面可以把Flex中的元素分为组件(Components)和容器(Containers)两大类:组件 - 是指那类具有明确交互或数据展示功能的元素,例如Button.Ch ...
随机推荐
- 一起來玩鳥 Starling Framework(8)BitmapFont
所謂BitmapFont,就是事先將我們會用到的字型,會用到的字,輸出成一張圖片,類似Sprite sheet,以及一個xml格式的Data file,然後我們一次將這文字圖片轉成Texture,up ...
- 【AS3 Coder】任务九:游戏新手引导的制作原理(上)
使用框架:AS3任务描述:了解游戏中新手的制作原理及流程 难度:3 本章源码下载:http://www.iamsevent.com/zb_users/UPLOAD/GuideManager/Test1 ...
- 【Cocos2d-x 3.0 基础系列一】 各类回调函数写法汇总
一.button回调 1. Lambda 表达式,C++11 Lambda 赋予了Cocos2d-x 3.0创建回调函数的灵活性. auto itemNor = Sprite::create(&quo ...
- crm查询和删除审核历史记录
using System; using System.Linq; using Microsoft.Xrm.Sdk; using Microsoft.Xrm.Sdk.Query; ...
- UNIX管道符
在Unxi操作系统中,标准输入和标准输出是外壳程序中可以单独使用的两个独立流.但是有时候系统工程师需要让某些特定的输入源不起作用.当系统工程师在开发一些实用的脚本程序的过程中,经常需要用到. 一. ...
- Android Exception 17(database or disk is full)
android.database.sqlite.SQLiteFullException: database or disk is full delete some app,or clear cache
- 怎样写APP计划书-20150313早读课
我们每天都会收到拥有APP创意的人们的电话和邮件,他们想知道把这样的APP做出来需要多少钱.在Calvium,我们尽可能帮助他们,但有时候 做这样的报价真的很难.询问一款APP的价值,就和询问一条绳子 ...
- 编写C函数的技术-《lua程序设计》 27章 学习
1.数组操作 void lua_rawgeti(lua_State * L ,int index,int key) void lua_rewseti(lua_State * L,int index,i ...
- 集成ueditor工具
摘要: 摘要: 版权声明:本文为博主原创文章,未经博主允许不得转载. UEditor 是百度的一套开源的在线HTML编辑器. 第一步:去官网看官网文档,了解这个工具如何使用以及下载,本人下载的是1.4 ...
- ASP.NET MVC传递Model到视图的多种方式总结
ASP.NET MVC传递Model到视图的多种方式总结 有多种方式可以将数据传递到视图,如下所示: ViewData ViewBag PartialView TempData ViewModel T ...