flexbox简介

flexbox简介

什么是flexbox

flexbox是一种新的布局方式,这种布局方式是2009年W3C提出的方案。它可以简便,完整,完成页面的布局。目前,它已经得到所有浏览器的支持。

但是flexbox从2009年以来,有各种版本的变化,比如2009年版本和2011年版本差别比较大。

为什么要有flexbox

每个新事物出现都有其历史使命的。flexbox也是如此,传统的布局依赖于屏幕的宽度和高度,或者依赖于计算的百分比,但是flex则是直接按照比例关系进行布局展示。

这样做的好处就是当屏幕进行拉升等情况的时候,flex布局的页面仍然符合我们的预期。

比如一个横排布局

|-----|-----|----------|
|  1  |  1  |     2    |
|-----|-----|----------|

平时的布局情况我们就会为1设置宽度25%,2设置宽度50%。但是这个时候,如果我们要变成下面这个布局呢?

|-----|-----|-----|----------|
|  1  |  1  |  1  |     2    |
|-----|-----|-----|----------|

那么我们就需要重新设置比例了,1比例为20%,2比例为40%。

在flexbox中,我们就可以直接设置一个横排为一个flex容器,然后子结构1的比例为1(flex:1),自结构2的比例为(flex:2)。

flexbox都有哪些属性可以设置

强烈推荐(《A Complete Guide to Flexbox》)[https://css-tricks.com/snippets/css/a-guide-to-flexbox/]。文章图文并茂地说了各个属性的各种含义。

父容器的属性

  • display:flex。 表明这个容器是flex布局。
  • flex-direction: row | row-reverse | column | column-reverse; 表明容器里面的子元素的排列方向。
  • flex-wrap: nowrap | wrap | wrap-reverse; 如果子元素溢出父容器的时候是否进行换行。
  • justify-content: flex-start | flex-end | center | space-between | space-around; 这一个容器子元素横向排版在容器的哪个位置
  • align-items: flex-start | flex-end | center | baseline | stretch; 这个容器子元素纵向排版在容器的哪个位置
  • align-content: flex-start | flex-end | center | space-between | space-around | stretch; 当容器内有多行项目的时候,项目的布局

子元素的属性

  • order: ; 子元素的排序
  • flex-grow: ; 分配剩余空间的比例
  • flex-shrink: ; 分配溢出空间的比例
  • flex-basis: | auto;
  • flex: none | [ <'flex-grow'> <'flex-shrink'>? || <'flex-basis'> ] 在容器中占比
  • align-self: auto | flex-start | flex-end | center | baseline | stretch; 特定某个子元素的排布情况
时间: 2024-08-22 05:13:33

flexbox简介的相关文章

跨浏览器的Flexbox:CSS Flexible盒模型3

文章简介:CSS Flexible盒模型3又简称为Flexbox.摒弃我们传统上使用的一些hack和组件,Flexbox给网络的发展带来了很多正能量和兴奋济,让我们一起把复杂的网站布局变得简易和快速. 简介 CSS Flexible盒模型3又简称为Flexbox.摒弃我们传统上使用的一些hack和组件,Flexbox给网络的发展带来了很多正能量和兴奋济,让我们一起把复杂的网站布局变得简易和快速.早前在Flexbox: fast track to layout nirvana?一文中介绍了Flex

旧CSS Flexbox语法案例和新CSS Flexbox语法案例

文章简介:2011年Richard Shepherd在Smashingmagazine.com写了篇文章.文章附带的提到了2011年版本的语法,但更侧重于2009年旧版本的语法. 大家都清楚的知道:"Flexbox"(全称:CSS Flexible Box Layout Module)在过去的三年中经历了许多变化.变化都达到了规范以及什么样的浏览器支持Flexbox. 如何辨别 如果你使用google搜索Flexbox,你会发现很多过时的信息.这里将告诉你如何迅速的辨别你需要的信息.

Flexbox新语法旧语法混用让浏览器完美的展示

文章简介:使用Flexbox:新旧语法混用实现最佳浏览器兼容. Flexbox非常的棒,肯定是未来布局的一种主流.在过去的几年这之中,语法改变了不少,这里有一篇"旧"和"新"新的语法区别教程(如果你对英文不太感兴趣,可以移步阅读中文版本).但是,如果我们把Flexbox新语法.旧语法和中间过渡语法混合在一起使用,我们就可以让浏览器得到完美的展示.尤其是对一个简单的和最可能常见的实例:控制网格顺序. HTML结构 一个具有语义化的容器"page-wrap&q

IE10中的Flexbox布局属性使用具体详解

文章简介:IE10中的Flexible Box("Flexbox")布局. 经过这一系列对Flexbox的介绍,我想大家对Flexbox在布局中的使用以及其强大功能特性给我们布局带来的方便性都有所了解.话又说回来,虽然Flexbox功能强大(特别是弹性布局),但还是很多同学不敢使用,也不想尝试性使用.我想主要原因出于他的语法版本众多,浏览器对其兼容性等. 在<"老"的Flexbox和"新"的Flexbox>一文中,让我们了解了如何识别

CSS3布局模式:伸缩布局盒(Flexbox)

文章简介:作者长期以来使用表格.浮动.行内块元素和其他 CSS 属性来布局网站内容.然而,这些并不是为复杂的页面和网页应用而设计的.不管是简单的垂直居中,还是灵活的网格布局都很难靠一己之力轻易实现,因此成就了 CSS 网格框架.但是,如果真的需要那么多项目来实现做这些事 介绍 Flexbox(伸缩布局盒) 是 CSS3 中一个新的布局模式,为了现代网络中更为复杂的网页需求而设计.本文将介绍 Flexbox 语法的技术细节.浏览器的支持越来越快,所以当 Flexbox 被广泛支持并应用时你将会快人

css3中flexbox伸缩盒深入理解

 这个背后有一个悲伤的故事,所以就取了个这么有点像标题党的标题,具体什么我就不说了.很早之前就知道css3里面有这么个东西,而且随着规范的改变,它的版本也改了几次.     也就是因为这个flexbox伸缩盒布局太强大了,以至于我没在意它也是display的一个属性. 要想解决这个布局问题,我们还是先了解一些基础的问题.先回顾下display有哪些属性吧:     none:隐藏对象.与visibility属性的hidden值不同,其不为被隐藏的对象保留其物理空间     inline:指定对象

Python中title()方法的使用简介

  这篇文章主要介绍了Python中title()方法的使用简介,是Python入门中的基础知识,需要的朋友可以参考下 title()方法返回所有单词的第一个字符大写的字符串的一个副本. 语法 以下是title()方法的语法: ? 1 str.title(); 参数 NA 返回值 此方法返回其中所有单词的前几个字符都是大写的字符串的一个副本. 例子 下面的例子显示了title()方法的使用. ? 1 2 3 4 #!/usr/bin/python   str = "this is string

shiro(1)-简介

简介 apache shiro 是一个功能强大和易于使用的Java安全框架,为开发人员提供一个直观而全面的的解决方案的认证,授权,加密,会话管理. 在实际应用中,它实现了应用程序的安全管理的各个方面. shiro的功能 apache shiro能做什么? 支持认证跨一个或多个数据源(LDAP,JDBC,kerberos身份等) 执行授权,基于角色的细粒度的权限控制. 增强的缓存的支持. 支持web或者非web环境,可以在任何单点登录(SSO)或集群分布式会话中使用. 主要功能是:认证,授权,会话

Tutum公司简介

2015年10月21日,由Tutum公司的CEO Borja Burgos对外宣布,Tutum与Docker公司正式合作,大家对Tutum和Docker的合作还是很期待的.下面我简单介绍一下Tutum公司. Tutum的历史 Tutum创立的时间很难确定.Tutum(拉丁语里安全的意思)的最初构思是在2012年秋季,它是作为Borja Burgos在卡内基梅隆大学(匹兹堡)的研究生课程和在日本兵库县大学的硕士论文,Tutum是一个可以帮助企业过渡到云的安全支持系统. 在2013年初,Tutum有