display:inline-flex使用

  1. 凡是使用了display:inline-flex布局的容器(不管是行内元素还是块级元素),将会变为弹性容器,它的宽高都将可以被设置,并且该容器整体对外表现为一个行内块元素
    span也可以设置宽高,并且div和span它们都没有独占一行,并且它们之间还有空隙,和行内块元素相似
    在这里插入图片描述

提出问题:假设span中有内容时候,而div中没有内容的时候,我们看到span元素它会掉下去,导致它没有和div对齐
在这里插入图片描述
处理问题:这个可以给外面套一个inline-flex的容器,并且设置垂直居中,底部的空隙可以通过vertical-align:bottom解决。(当然更简单的方式,不套外层的inline-flex容器,直接在.box中使用vertical-align:top也可以解决这个对齐的问题,但是假设这里的span和div大小是不一样的,那么它们在同一行中并不能垂直居中对齐,而且垂直居中也是比较麻烦的-或者说把2个都设置为vertical-align:middle也可以垂直居中,而如果使用margin-top则两个都会一起向下移动达不到效果。然而使用display:inline-flex比较好解决这个问题,不管它们两个是不是一样大小,都能比较简单的垂直居中对齐,这样就可以解决行内元素和图片行内块元素之间的垂直居中对齐问题了,并且发现作为inline-flex布局容器的子元素都是行内块元素,但是它们之间是没有间隙的
在这里插入图片描述

  1. 使用了inline-flex布局的容器,它的直接子元素将也会变成行内块元素,可以直接设置宽高(注意哦,虽然类似于行内块元素,但是它们中间是没有间隙的!)
    在这里插入图片描述

  2. 当使用inline-flex的父容器没有设置宽度时,当使用flex-wrap:nowrap;(默认值),当父容器宽度不够时,仍然不会换行。当使用flex-wrap:wrap时,当父容器宽度不够时,会换行。
    在这里插入图片描述

  3. 当使用inline-flex的父容器有设置宽度时,而flex-wrap:nowrap时,子元素宽度将会被压缩,可以通过flex-shrink设置压缩系数。(flex-grow与flex布局相同,不作演示)
    在这里插入图片描述

  4. 文本和行内块元素对齐,只需要添加display: inline-flex; align-items: center;
    在这里插入图片描述
    即使当容器的宽度不够,导致文本换行了,这个换行的多行文本仍然维持垂直居中
    在这里插入图片描述

  5. 处理图片和文本垂直居中问题
    在这里插入图片描述

7.在常规流中,给行内元素设置margin-bottom、margin-top、padding-top、padding-bottom,是无效的,但是如果设置给inline-flex的元素,则是可以的

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
display: inline-flex;是CSS中的一个属性,用于设置元素的显示方式为内联弹性盒模型。内联弹性盒模型与弹性盒模型类似,但元素会以行内元素的方式呈现。 使用display: inline-flex;可以实现文本和行内块元素的对齐,并且可以保持多行文本的垂直居中。当容器的宽度不足以容纳元素时,元素会自动换行,并仍然保持垂直居中。 当父容器设置了宽度,并且使用flex-wrap: nowrap;属性时,子元素的宽度会被压缩。可以通过flex-shrink属性来设置子元素的压缩系数,控制子元素的宽度压缩程度。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [详解CSS中的display:flex||inline-flex属性](https://download.csdn.net/download/weixin_38501751/12891643)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [display:inline-flex使用](https://blog.csdn.net/qq_16992475/article/details/129394012)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值