CSS-FlexBox

172 阅读2分钟

这是我参与2022首次更文挑战的第2天,活动详情查看:2022首次更文挑战

flexbox定义

css布局相关,用更轻量简单的方法实现类似float,display的布局方式.
由Flex容器和Flex项目组成.
Flex容器:父元素显式设置display:flex。
Flex项目:Flex容器内的子元素

flexbox容器属性 - 元素和用途

flex-directionflex-wrapflex-flowjustify-contentalign-itemsalign-content
Flex沿着主轴(Main Axis)排列方向以适合放置更多列表项目/让列表项目换行排列flex-directionflex-wrap两个属性的合并Flex项目在Main-Axis上的对齐方式Flex项目在Cross-Axis对齐方式控制Flex项目在Flex容器里的排列方式
此行均为默认值 row 行(水平)nowrap (不换行排列)row nowrap 类似这种组合flex-start(所有Flex项目靠Main-Axis开始边缘(左对齐))stretch(让所有的Flex项目高度和Flex容器高度一样)stretch(拉伸Flex项目,让他们沿着Cross-Axis适应Flex容器可用的空间)
column 列(垂直)wrap(多行排列)--flex-end (所有Flex项目靠Main-Axis结束边缘(右对齐))flex-endflex-start(Flex容器中顶部对齐)
row-reverse (行反向)wrap-reverse(多行排列,只是方向是反的)--center(所有Flex项目排在Main-Axis中间(居中对齐))centerflex-end(底部对齐)
column-reverse (列反向)----space-between(除了第一个和最一个Flex项目的两者间间距相同(两端对齐))flex-start (所有Flex项目靠Cross-Axis开始边缘(顶部对齐))center(Flex容器中居中对齐)
------space-around(让每个Flex项目具有相同的空间)baseline(让所有Flex项目在Cross-Axis上沿着他们自己的基线对齐)--

flexbox项目属性 - 元素和用途

orderflex-growflex-shrinkflex-basisflex
Flex容器中重新排序在容器有多余的空间如何放大(扩展)在没有额外空间又如何缩小Flex项目的初始大小flex-growflex-shrinkflex-basis三个属性的简写
默认值是00[不会增长,开关关闭]1[增长,开关打开,以适应新宽度]auto0 1 auto
可正1[增长,开关打开,以适应新宽度]0[不会增长,开关关闭]取任何用于width属性的任何值 - %/em/rem/px--
可负-----------