flexbox弹性布局

flexbox的核心是自适应动态变化的弹性布局

伸缩布局盒模型和术语

主轴
main axis:Flex容器的主轴主要用来配置Flex项目。注意,它不一定是水平,这主要取决于flex-direction属性。
main-start | main-end:Flex项目的配置从容器的主轴起点边开始,往主轴终点边结束。
main size:Flex项目的在主轴方向的宽度或高度就是项目的主轴长度,Flex项目的主轴长度属性是width或height属性,由哪一个对着主轴方向决定。

侧轴
cross axis:与主轴垂直的轴称作侧轴,是侧轴方向的延伸。
cross-start | cross-end:伸缩行的配置从容器的侧轴起点边开始,往侧轴终点边结束。
cross size:Flex项目的在侧轴方向的宽度或高度就是项目的侧轴长度,Flex项目的侧轴长度属性是width或height属性,由哪一个对着侧轴方向决定。

设置父容器的属性有

.container{
    display: flex | inline-flex;
    flex-direction: row | row-reverse | column | column-reverse;
    flex-wrap: nowrap | wrap | wrap-reverse;
    flex-flow: @flex-direction @flex-wrap;
    justify-content: flex-start | flex-end | center | space-between | space-around;
    align-items: flex-start | flex-end | center | baseline | strtch;
    align-content: flex-start | flex-end | center | space-between | space-around | stretch;
}

设置子元素的属性有

.item{
    order: number;
    flex-grow: number; /* default 0 */
    flex-shrink: number; /* default 1 */
    flex-basis: number | auto; /* default auto */
    flex: none | @flex-grow @flex-shrink @flex-basis;
    align-self: auto | flex-start | flex-end | center | baseline | stretch;
}

flex-direction 显示方向

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

  • row:默认值,从左至右,从上到下;
  • row-reverse: 伸缩项目则是从右往左显示。
  • column: 主轴和侧轴交换。如果书写系统是垂直的,那么伸缩项目也是垂直显示的。
  • column-reverse: 和 column 一样,但是方向相反。

时间: 2024-11-20 07:27:38

flexbox弹性布局的相关文章

CSS3中的Flexbox弹性布局(二)

flexbox详解 flexbox的出现是为了解决复杂的web布局,因为这种布局方式很灵活.容器的子元素可以任意方向进行排列.此属性目前处于非正式标准. flex布局模型不同于块和内联模型布局,块和内联模型的布局计算依赖于块和内联的流方向,而flex布局依赖于flex directions.简单的说:Flexbox是布局模块,而不是一个简单的属性,它包含父元素(flex container)和子元素(flex items)的属性. 属性解析 链接:https://cruxf.github.io/

CSS3 Flexbox 弹性布局

Flex是Flexible Box的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性.任何一个容器都可以指定为Flex布局.2009年,W3C提出了一种新的方案----Flex布局,可以简便.完整.响应式地实现各种页面布局.目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能. 1.先看一下这些属性对应的值 display: flex |  inline-flex; flex-direction: row | row-reverse | column | c

CSS3 flexbox弹性布局实例

常用例子 1.居中对齐 <!DOCTYPE html> <head> <meta charset="utf-8"> <style type="text/css"> .flex-container{ padding:0; margin:0; list-style:none; display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-webki

css3 flexBox 弹性布局 记录

在传统的css布局,都是依赖于position,float,dosplay进行.在一些特定的布局的实现上往往很不方便,比如一个元素的垂直居中.鉴于这种关系,2009年,W3C 提出了一种新的方案----Flex 布局,可以简便.完整.响应式地实现各种页面布局.目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能. 首先让我们明白在flex中什么是容器,什么是元素 <div>//容器 <div></div>//元素 <span></

React Native 弹性布局FlexBox

React Native采用一中全新的布局方式:FlexBox(弹性布局).可以很方便的实现各种复杂布局,是全新的针对web和移动开发布局的一种实现方式. 何为FlexBox? 完整名称为:the flexible box Module,旨在通过弹性的方式来对齐和分布容器中的组件.Flexbuju的主要思想是:让容器有能力让其子项目能够改变其宽度|高度|顺序,以最佳方式填充可用空间. 在布局中,首先得确定主轴方向(flexDirection),主轴组件的对齐方式(justifyContent),

百度在PWA中阐述的弹性布局-[CSS]

原文链接 响应式布局 自从进入移动互联网时代,响应式布局这个词经常出现在 Web 设计和开发领域,它让 Web 页面在不同尺寸的设备上都具有良好的浏览体验. 开始之前 在讲解响应式布局之前,需要先了解一下基础知识,只有对它们都有一定的了解,才能在做响应式布局时选取合适的技术方案. 像素 像素这个单位很常见,指的是图像中最小的单位,一个不可再分割的点,在计算机屏幕上一般指屏幕上的一个光点.例如常见的描述中 iPhone X 的分辨率是 1125x2436,一般指的是在长和宽上像素点的个数.但是在

CSS3弹性盒模型之Flexbox是布局模块box-sizing &amp; box-orient &amp; box-direction &amp; box-ordinal-group

css3 box-sizing属性 box-sizing属性可以为三个值之一:content-box(default),border-box,padding-box. content-box,border和padding不计算入width之内 padding-box,border-box,border和padding计算入width之内 ie8+浏览器支持content-box和border-box: ff则支持全部三个值. 使用时: -webkit-box-sizing: 100px; //

【repost】CSS3弹性布局

本文导读:在CSS 3中,CSS Flexible Box模块为一个非常重要的模块,该模块用于以非常灵活的方式实现页面布局处理.使用CSS Flexible Box模块中定义的弹性盒布局技术,可以根据屏幕尺寸或浏览器窗口尺寸自动调整页面中各局部区域的显示方式,即实现非常灵活的布局处理. 弹性布局(flexible box)模块旨在提供一个更加有效的方式来布置,对齐和分布在容器之间的各项内容,即使它们的大小是未知或者动态变化的. 弹性布局的主要思想是让容器有能力来改变项目的宽度和高度,以填满可用空

CSS3支持box-flex弹性布局

<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <h1>CSS3支持box-flex弹性布局</h1> <p> Flexbox 为 display 属性赋予了一个新的值(即 box 值),还为我们提供了 8 个新的属性: box-orie