flex布局-一维布局

    技术2025-06-15  38

    文章目录

    flex布局 —— 一维布局基本概念flex容器属性flex-directionflex-wrapflex-contentalign-itemsalign-content flex项目属性

    flex布局 —— 一维布局

    基本概念

    Flexbox叫弹性盒模型,它的使用场景主要是屏幕自适应布局和取代浮动布局。设置了display:flex属性的元素,称为Flex容器,他里面的所有子元素统称为容器成员,称为Flex项目。Flex容器有两根坐标轴:主轴(main axis)和交叉轴(cross axis)。

    flex容器属性

    flex-direction:决定主轴的方向即项目的排列方向。 flex-wrap:超出容器项目的排列样式。控制容器是单行显示还是多行显示。 flex-flow:flex-direction 属性和 flex-wrap 属性的简写形式。 justify-content:flex项目在主轴的排列方向。 align-items:flex项目在交叉轴的排列方向。 align-content:多根轴线的对齐方式。

    flex-direction

    flex-wrap

    这个属性声明的是当容器中的项目一行放不下的时候,是让大家挤一挤呢,还是换行。 flex-wrap: nowrap; // 默认,不换行 flex-wrap: wrap; // 换行,第一行在上方。 flex-wrap: wrap-reverse // 换行,第一行在下方。

    flex-content

    justify-content: flex-start; // 默认,左对齐 justify-content: flex-end; // 右对齐 justify-content: center; // 居中 justify-content: space-between; // 两端对齐,项目之间的间隔都相等。 justify-content: space-around; // 每个项目两侧的间隔相等。所以,项目之间的间隔比项目与边框的间隔大一倍。

    align-items

    定义flex项目在交叉轴上如何对齐。具体的对齐方式与交叉轴的方向有关,下面假设交叉轴从上到下。 align-items: flex-start; // 交叉轴的起点对齐。 align-items: flex-end; // 交叉轴的终点对齐。 align-items: center; // 交叉轴的中点对齐。 align-items: baseline; // 项目的第一行文字的基线对齐。 align-items: stretch; // 默认,如果项目未设置高度或设为auto,将占满整个容器的高度。

    align-content

    定义了多根轴线的对齐方式。如果项目只有一根轴线,该属性不起作用。 align-content: flex-start; // 与交叉轴的起点对齐 align-content; flex-end; // 与交叉轴的终点对齐。 align-content: center; // 与交叉轴的中点对齐。 align-content: space-between;// 与交叉轴两端对齐,轴线之间的间隔平均分布。 align-content: space-around; // 每根轴线两侧的间隔都相等。所以,轴线之间的间隔比轴线与边框的间隔大一倍。 align-content: stretch; // 默认 轴线占满整个交叉轴。

    flex项目属性

    order:flex项目的排列顺序flex-grow:flex项目剩余空间的拉伸比例flex-shrink:flex项目超出空间的压缩比例flex-basis:flex项目在不伸缩情况下的原始尺寸flex:flex项目的 flex 属性是 flex-grow,flex-shrink 和 flex-basis 的简写align-self
    Processed: 0.011, SQL: 10