当前位置: 首页 > 网络应用技术

一篇文章完全理解flex布局-CSS3新布局 - 重新定位传统布局想法

时间:2023-03-07 19:20:52 网络应用技术

  Flex布局背后的主要思想是允许容器更改项目的宽度/高度(和顺序)以填充可用空间(主要是适应各种显示器和屏幕尺寸)。弹性容器扩展项目已填充可用空间或减少它们以防止溢出。

  最重要的是,弹性盒布局与常规布局无关(基于垂直块和基于水平的内部工会)。尽管它们适合页面,但它们缺乏支持大型或复杂应用的灵活性(尤其是当它们涉及方向变化,调整大小,伸展,收缩等)。

  注意:布局最适合该应用程序的组件和小规模布局,并且布局适用于较大的尺度布局。

  Web布局的关键应用程序。布局的传统解决方案基于框形模型,取决于显示属性 +位置属性 +float属性。对于这些特殊布局(例如垂直性),它非常不便,它是不容易实现。

  flex布局(Flex是灵活框的缩写),也称为弹性框型号。编写属性和属性值(显示:flex;),其中标签样式,谁是容器;其所有子元素都会自动成为容器的成员,称为项目。

  当元素的显示值是flex时,所有项目(子元素)将以一行显示;如果所有项目大小的总和大于容器,则不会超过父元素的宽度和高度。它不会更改(每个项目都会自动减少相应的比例)。

  作为可以替代浮动的新布局,Flex布局更为先进,更简单,并且越来越流行。

  1.屈曲方向

  弹性方向属性确定主轴的方向(即项目排列的方向)。

  2.弹性包装

  弹性包装,Flex布局中的项目将尝试以一行显示

  3.弹性流

  Flex-Flow属性是flex方向属性和Flex包装属性的简短形式。默认值是row nowrap。

  4.合理性

  正当属性属性定义了主轴上项目对齐的方法。

  5.对准项目

  对齐项目如何归因于跨轴上的定义项目。

  对准项目属性通常用于设置垂直中心

  6.对齐

  对齐符号属性定义了多轴的对齐方法。如果项目只有一个轴,则该属性不起作用。

  在项目上设置了以下6个属性。

  Flex Grow属性定义项目的缩放比率,默认值为0,也就是说,如果有剩余空间,它将不会被放大。

  注意:如果所有项目的挠性增长属性为1,它们将划分剩余的空间(如果是)。比其他项目两倍。

  注意:如果所有项目的flex-shrink属性均为1,那么当空间不足时,将减少比例。前者不会减少。

  负值对于此属性无效。

  挠性属性是柔性生长,屈曲障碍和挠性基础。默认值为0 1自动。后两个属性是可选的。

  作者:胜利123

  日期:5.4

  参考:http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html

  https://css-tricks.com/snippets/css/a-nide--flexbox/#aa-rder

  原始:https://juejin.cn/post/709745471563401886