CSS中的flex布局
admin2020-10-13 13:27:45清河洛2131
Flex是Flexible Box的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。是W3C提出的一种新的方案,可以简便、完整、响应式地实现各种页面布局。它即可以设置容器为块元素(display:flex),也可以设置容器为行内元素(display:inline-flex)。设为Flex布局以后,子元素的float、clear和vertical-align属性将失效。目前,它已经得到了所有浏览器的支持。定义容器的六个属性flex-direction:容器内元素的排列方向(默认row) row,沿水平主轴从左向右排列 row-reverse,沿水平主轴从右向左排列 column,沿垂直主轴从上到下垂直排列 column-reverse,沿垂直主轴从下到上垂直排列flex-wrap:容器内元素的换行(默认nowrap) nowrap:不换行,如一个div宽度100%,设置此属性,2个div宽度就自动变成各50% wrap:自动换行,向下方
Flex是Flexible Box的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。是W3C提出的一种新的方案,可以简便、完整、响应式地实现各种页面布局。
它即可以设置容器为块元素(display:flex),也可以设置容器为行内元素(display:inline-flex)。
设为Flex布局以后,子元素的float、clear和vertical-align属性将失效。
目前,它已经得到了所有浏览器的支持。
定义容器的六个属性
flex-direction:容器内元素的排列方向(默认row)
row,沿水平主轴从左向右排列 row-reverse,沿水平主轴从右向左排列 column,沿垂直主轴从上到下垂直排列 column-reverse,沿垂直主轴从下到上垂直排列
flex-wrap:容器内元素的换行(默认nowrap)
nowrap:不换行,如一个div宽度100%,设置此属性,2个div宽度就自动变成各50% wrap:自动换行,向下方换行,第一行在上方 wrap-reverse:自动换行,向上方换行,第一行在下方
flex-flow:是flex-direction属性和flex-wrap属性的简写形式,默认值为:row nowrap
justify-content:容器内元素在水平主轴上的对齐方式(默认flex-start)
center:水平居中对齐 flex-start:水平方向左对齐 flex-end:水平方向右对齐 space-between:从两端分散对齐 space-around:每个元素左右两侧的间隔相等分散对齐
align-items:容器内元素在当前行的垂直方向上的对齐方式(默认stretch)
flex-start:顶部对齐 flex-end:底部对齐 center:水平中间线对齐 baseline:第一行文字的基线对齐 stretch:如果元素未设置高度或设为auto,将占满整个容器的高度。
align-content:容器内元素垂直主轴上的对齐方式(默认center)
flex-start:顶部对齐 flex-end:底部对齐 stretch:居中对齐 center:每个元素下间隔相同占满垂直空间 space-between:从两端分散对齐 space-around:每个元素上下两侧的间隔相等分散对齐
容器内元素的属性:
order :定义元素的排列顺序,数值越小越靠前,可以为负数,默认为0
flex-grow :定义如果存在剩余空间元素的放大比例,默认为0,表示不放大
如果所有元素的flex-grow属性都为1,则它们将等分剩余空间(如果有的话)。 如果其中一个元素的flex-grow属性为2,其他都为1,则前者占据的剩余空间将比其他项多一倍。
flex-shrink :定义如果空间不足元素的缩小比例,0表示不缩小,默认为1,负值无效
flex-basis |auto:定义了在分配多余空间之前,元素占据的水平宽度。
浏览器根据这个属性,计算主轴是否有多余空间。 它的默认值为auto,即项目的本来大小。 它可以设为跟width或height属性一样的值(比如350px),则项目将占据固定空间。
flex:是flex-grow, flex-shrink 和 flex-basis的简写
默认值为0 1 auto,后两个属性可选。 该属性有两个快捷值:auto (1 1 auto) 和 none (0 0 auto)。
align-self:允许单个项目有与其他项目不一样的对齐方式,可覆盖align-items属性
默认值为auto,表示继承父元素的align-items属性 如果没有父元素,则等同于stretch。
感觉很赞?点击支持一下! ()