一开始使用flex,看到属性那么多,名字这么复杂,有点头皮发麻,好在几天下来也总结了一些常用的效果,故记录下来(教程就不再赘述,去看阮一峰老师的教程即可):
flex默认值是 flex:0 1 auto 指的是 flex-grow:0; flex-shrink:1; flex-basic:auto;
flex-grow属性定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大。
flex-shrink属性定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小。
flex-basis属性定义了在分配多余空间之前,项目占据的主轴空间(main size)。浏览器根据这个属性,计算主轴是否有多余空间。它的默认值为auto,即项目的本来大小。
我自己的用法:
/* 匹配元素有flex的属性 则赋予display: flex; 样式*/
[flex]{
display: flex;
}
/* 内部元素垂直居中*/
[flex~="cross:center"] {
align-items: center;
}
/* 内部元素水平居中*/
[flex~="main:center"] {
justify-content: center;
}
/* 内部元素水平垂直居中*/
[flex~="all:center"] {
align-items:center;
justify-content: center;
}
/* 两端对齐,项目之间的间隔都相等*/
[flex~="main:justify"] {
justify-content: space-between;
}
/* 主轴从上到下排列*/
[flex~="box:vertical"]{
flex-direction:column;
align-items:stretch;
}
/* 主轴从左到右排列*/
[flex~="box:horizontal"]{
flex-direction: row;
}
/* 允许缩放 缩放比例 为 1 */
[flex~="box:zoom"]{
flex-grow: 1;
flex-shrink: 1;
flex-basic: auto;
}
/* 不允许缩放*/
[flex~="box:noZoom"]{
flex-grow: 0;
flex-shrink: 0;
flex-basic: auto;
}
具体用法:
<div flex='all:center'>
<div>
inner div
</div>
</div>
Flex布局精要
本文总结了Flex布局的常见属性及用法,包括flex-grow、flex-shrink、flex-basis等,通过实例展示了如何实现元素的垂直居中、水平居中、两端对齐等效果。
1851

被折叠的 条评论
为什么被折叠?



