Flex 用于使页面上的内容自适应屏幕

首先,在网页代码的头部,加入一行viewport元标签

<meta name=”viewport” content=”width=device-width, initial-scale=1″ />

viewport是网页默认的宽度和高度,上面这行代码的意思是,网页宽度默认等于屏幕宽度(width=device-width),原始缩放比例(initial-scale=1)为1.0,即网页初始大小占屏幕面积的100%。

HTML 代码

<div class="container">
<div class="item"></div>
<div class="item"></div>
<div class="item order"></div>
<div class="item"></div>
<div class="item"></div>
</div>

Container CSS 代码

1. flex

要使用flex必须在container上加上display:flex 和 display: -webkit-flex; /_ Safari _/

.container {
display: flex; /* or inline-flex */
display: -webkit-flex; /_ Safari _/
}

2. flex-direction

.container {
-webkit-flex-direction: row | row-reverse | column | column-reverse;
flex-direction: row | row-reverse | column | column-reverse;
}

3. flex-wrap

.container{
-webkit-flex-wrap: nowrap | wrap | wrap-reverse;
flex-wrap: nowrap | wrap | wrap-reverse;
}

4. flex-flow

This property is a shorthand for setting the flex-direction and flex-wrap properties.

flex-flow: <‘flex-direction’> || <‘flex-wrap’>

.container {
-webkit-flex-flow: row nowrap;
flex-flow: row nowrap ;
}

5. justify-content

Value : flex-start | flex-end | center | space-between | space-around | space-evenly;

.container {
-webkit-justify-content: flex-start; /_ Safari _/
justify-content: flex-start;
}

6. align-items

Value : flex-start | flex-end | center | baseline | stretch;

.container {
-webkit-align-items: stretch; /_ Safari _/
align-items: stretch;
}

7. align-content

Value : flex-start | flex-end | center | space-between | space-around | stretch;

.container {
-webkit-align-content: stretch; /_ Safari _/
align-content: stretch;
}

Item CSS 代码

1. Order

默认值为0,数值越小,排列越靠前.

.item.order {
-webkit-order: 1; /_ Safari _/
order: 1;
}

2.  flex-grow

属性定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大。

.item {
-webkit-flex-grow: 0; /_ Safari _/
flex-grow: 0;
}

 

3. flex-shrink

属性定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小。

.item {
flex-shrink: 1;
}

4. flex-basis

This property takes the same values as the width and height properties, and specifies the initial main size of the flex item, before free space is distributed according to the flex factors.

.item {
-webkit-flex-basis: auto; /_ Safari _/
flex-basis: auto;
}

5. flex

This property is the shorthand for the flex-grow, flex-shrink and flex-basis properties. Among other values it also can be set to auto (1 1 auto) and none (0 0 auto).

Default value: 0 1 auto

.item {
-webkit-flex: 0 1 auto; /_ Safari _/
flex: 0 1 auto;
}

6. align-self

align-self属性允许单个项目有与其他项目不一样的对齐方式,可覆盖align-items属性。默认值为auto,表示继承父元素的align-items属性,如果没有父元素,则等同于stretch

Value : auto | flex-start | flex-end | center | baseline | stretch;

.item {
-webkit-align-self: auto; /_ Safari _/
align-self: auto;
}

https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Flexible_Box_Layout

https://css-tricks.com/snippets/css/a-guide-to-flexbox/

https://scotch.io/tutorials/a-visual-guide-to-css3-flexbox-properties

http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html?utm_source=tuicool)

CSS3 Flex布局的更多相关文章

  1. CSS3 Flex布局整理(三)-项目属性

    一.Flex布局中 Flex Item属性控制,可以指定显示顺序.剩余空间的放大,缩小.交叉轴的排列 1.order:定义项目的排列顺序,数值越小,排列越靠前,默认为0.类似z-index 2.fle ...

  2. CSS3 Flex布局整理(二)-容器属性

    一.Flex容器属性介绍 1.flex-flow :水平或垂直方向上的流动方式,包裹处理,其中包括了flex-direction属性和flex-wrap属性. 2.justify-content:定义 ...

  3. CSS3 Flex布局整理(一)

    一.说明 1.在以往的布局方案中,都是基于盒装模型,依赖display属性+position属性+float属性等. 他对于那些特殊布局非常不方便,比如,垂直居中等. 并且不同浏览器的盒模型还有些差异 ...

  4. CSS3 Flex布局(伸缩布局盒模型)学习

    CSS3 Flex布局(伸缩布局盒模型)学习 转自:http://www.xifengxx.com/web-front-end/1408.html CSS2定义了四种布局:块布局.行内布局.表格布局盒 ...

  5. CSS3 Flex布局(项目)

    一.order属性 order属性定义项目的排列顺序.数值越小,排列越靠前,默认为0. 二.flex-grow属性 flex-grow属性定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大. ...

  6. CSS3 Flex布局(容器)

    一.flex-direction属性 row(默认值):主轴为水平方向,起点在左端. row-reverse:主轴为水平方向,起点在右端. column:主轴为垂直方向,起点在上沿. column-r ...

  7. CSS3 Flex 布局教程

    网页布局(layout)是 CSS 的一个重点应用. 布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性.它对于那些特殊布局非常不方便,比如,垂 ...

  8. css3 flex 布局

    今天做一个小实战,需要让一个登录框始终保持水平和垂直居中,第一个想到的就是通过定位(要想让一个div居中,采用定位可以解决,示例), 然后开始接触flex布局,学完感觉真的好用,现把知识点记录一下,以 ...

  9. css3 flex布局结合transform生成一个3D骰子

    预览地址: https://zhaohh.github.io/flex-dice/index.html 1 Flex 布局 首先聊聊Flex 布局,Flex 布局又称"弹性布局", ...

  10. css3 flex布局/grid布局

    1.CSS3 Flexbox 布局完全指南(图解 Flexbox 布局详细教程) 2.CSS Grid 布局完全指南(图解 Grid 详细教程)

随机推荐

  1. elasticsearch6.x集群环境部署

    elasticsearch集群部署安装jdk chmod 755 jdk-8u161-linux-x64.tar.gztar -zxvf jdk-8u161-linux-x64.tar.gzcp jd ...

  2. 安装sql server2017出现错误:Visual Studio 运行时"Microsoft visual c++2017 X64 Minimum Runtime - 14.10.25008"需要修复

    安装sql server 2017 Developer Edition时,安装选择“基本”,发生如下错误: 解决方法: 1.进入控制面板→程序中,找到“Microsoft visual c++2017 ...

  3. C#之事件与eventArgs

    static void Main(string[] args)         {             MyText myText = new MyText();             myTe ...

  4. windows 分页缓冲池 非分页缓冲池

    最近在windows server 2012机器上在做性能测试时,发现8G物理内存,内存使用率占到了90%多,在“进程”列表中所有进程内存相加才2个多G,同时任务管理器->“性能”标签一项中,非 ...

  5. git bash 连接github并提交项目工程

    借鉴博客:https://www.cnblogs.com/flora5/p/7152556.html https://blog.csdn.net/heng_yan/article/details/79 ...

  6. django模板引擎自定义变量

    定义临时变量: {% with i=1 %} {{i}} {% endwith %} 定义对临时变量操作的tag 在templatetags中创建set_val.py 内容是 from django ...

  7. LODOP获取打印成功,是否加入队列

    之前博文介绍过获取打印机状态码 LODOP获取打印机状态码和状态码含义测试,但是打印机种类千差万别,状态码不一定准确,特别是打印成功的状态码,获取任务不在队列,可以判断打印成功,删除任务也是任务不在队 ...

  8. Vue-详解设置路由导航的两种方法

    https://www.cnblogs.com/superlizhao/p/8527317.html

  9. Markdown基础语法小结

    一.前言 Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式. --摘自百度百科 没想到一向不太靠谱的百度百科这次竟有了如此精辟的解释. ...

  10. fiddler和手机连接抓包实现

    很好用的抓包工具,不需要手机usb连接就可以抓包,查找bug超方便 实现方法: 借鉴跳转 手机版本:andriod 7.1.1 上面的方法的基础上遇到的问题: 在浏览器下载下来证书后始终无法打开(或许 ...