美文网首页
flex布局 align-content

flex布局 align-content

作者: 雨来 | 来源:发表于2024-02-18 15:16 被阅读0次

justify-content (主轴子项目对齐方式) 和 align-items(交叉轴子项目对齐方式)如果你是安卓开发者可以叫子项目为子View

align-content 强调的是多行

这个多行是 container(容器的宽度或高度不足以 容纳子项目的宽或高而被迫换行的) 而不是你用两个span 直接换行的
需要设置的属性 flex-wrap="wrap"
如我们的容器是水平方向 flex-direction="row" 这个时候在们再来3个span 第一个宽度为30% 第二个为50% 第三个为 50% 那么第三个肯定在一行的是放不下的

<container display="flex" flex-direction="column" width="100%" background="#FFFFFF"
        padding-horizontal="20rpx">

        <!--  flex-wrap="wrap" 多行时 align-content 才会生效 -->
        <container display="flex" flex-wrap="wrap" width="100%"
            flex-direction="row"
            background="#FFFFFF"
            height="30%"
            url="aaaaa"
            border-style="solid"
            border-color="#FF0000"
            margin-top="10rpx"
            border-width="2px"
            border-radius="2px"
            >

          <span content="中国" width="30%" background="#FFeeaa" ></span>
          <span content="中国" width="50%" background="#000000"  height="20rpx" ></span>
          <span content="中国" width="50%" background="#0000FF"   ></span>


        </container>


    </container>
image.png

为什么会显示成上面的效果
因为 align-content 的默认值是 stretch stretch值的情况下 会拉伸占据交叉轴方向的空间,如果子项目的 交叉轴的方向的长度(可能是宽也可能是高)上面的示例是高度如果是固定值 则不会拉伸 像黑色的span 如果没有设置高度则为拉伸占据整个交叉轴方向的空间

align-content="flex-start"

 <container display="flex" flex-direction="column" width="100%" background="#FFFFFF"
        padding-horizontal="20rpx">

        <!--  flex-wrap="wrap" 多行时 align-content 才会生效 -->
        <container display="flex" flex-wrap="wrap" width="100%"
            flex-direction="row"
            background="#FFFFFF"
            height="30%"
            url="aaaaa"
            border-style="solid"
            border-color="#FF0000"
            margin-top="10rpx"
            border-width="2px"
            border-radius="2px"
            align-content="flex-start"
            >

          <span content="中国" width="30%" background="#FFeeaa" ></span>
          <span content="中国" width="50%" background="#000000"  ></span>
          <span content="中国" width="50%" background="#0000FF"  ></span>


        </container>


    </container>
image.png

align-content="flex-end"

image.png

align-content="center"

image.png

align-content="space-between"

在这个模式下如果我们的子项目 交叉轴方向的长度(可能是宽也可能是高)如果不是固定值的话 可能达不到我们的预期 会显示成下面的效果

image.png

如果我们的三个子元素设置成固定长度(宽或高)的话则会显示成下面的效果


image.png image.png

align-content="space-around"

交叉轴的长度(宽和高)设置为固定值显示效果可以达到我们的预期


image.png

如果不设置则显示成下面的效果 (和我们预期的不符)


image.png
image.png

相关文章

  • css-cmd

    flex布局详解 align-content (底部可以测试flex相关属性)

  • CSS align-content属性

    align-content堆栈(由flex-wrap产生的独立行)对齐 align-content是针对flex容...

  • 弹性容器内的布局属性

    1.justify-content ,align-content ,align-items 2.flex-wrap...

  • flex布局

    认识flex布局 flex布局(Flexible 布局,弹性布局)开启了flex布局的元素叫flex contai...

  • 初见FLEX

    FLEX布局 一种新的布局方式,flex布局 flex布局与方向无关 flex布局可以实现空间自动分配、自动对齐。...

  • Flex 布局教程

    一、Flex 布局教程:语法篇 Flex 布局教程:语法篇 二、Flex 布局教程:实例篇 Flex...

  • css flex布局详解

    css flex布局详解 css flex布局详解1css flex布局详解2

  • Flex

    阮一峰-Flex布局 阮一峰-Flex布局实例教程 Flex布局 块级元素 行内元素 注意,设为 Flex 布局...

  • flex布局学习笔记

    经典教程 Flex 布局教程:语法篇Flex 布局教程:实例篇flex布局游戏 理解 flex布局实现需要至少两层...

  • 6Flex 布局

    Flex,(Flexible Box),意为"弹性布局"采用 Flex 布局的元素,为 Flex 容器(flex ...

网友评论

      本文标题:flex布局 align-content

      本文链接:https://www.haomeiwen.com/subject/grcmadtx.html