利用flex实现元素水平垂直居中[通俗易懂]

利用flex实现元素水平垂直居中[通俗易懂]首先介绍一下flex布局。采用Flex布局的元素,称为Flex容器(flexcontainer),简称“容器”。它的所有子元素自动成为容器成员,成为flex项目(flexitem),简称“项目”。容器默认存在两根轴:水平的主轴(mainaxis)和垂直的交叉轴(crossaxis)。主轴的开始位置(与边框的交叉点)叫做mainstart,结束位置叫做mainend;交叉轴的开始…

大家好,又见面了,我是你们的朋友全栈君。

首先介绍一下flex布局。

采用Flex布局的元素,称为Flex容器(flex container),简称“容器”。它的所有子元素自动成为容器成员,成为flex项目(flex item),简称“项目”。

在这里插入图片描述
容器默认存在两根轴:水平的主轴(main axis)和垂直的交叉轴(cross axis)。主轴的开始位置(与边框 的交叉点)叫做main start,结束位置叫做main end;交叉轴的开始位置叫做cross start,结束位置叫做cross end。项目默认沿主轴排列。单个项目占据的主轴空间叫做main size,占据的交叉轴空间叫做cross size。

利用flex实现元素水平垂直居中的两种方法:

html如下:

<div class="father">
    <div class="son">
    </div>
</div>

第一种方法(新方法)

父元素(容器)设置display属性为flex,并设置水平主轴上的元素居中,垂直交叉轴上的元素居中。

*{ 
   
    margin: 0;
    padding: 0
}
.father{ 
   
    width: 400px;
    height: 400px;
    border: 1px dashed black;
    display: flex;/*父元素设置flex属性*/
    justify-content: center;/*水平主轴居中*/
    align-items: center;/*垂直交叉轴居中*/
}
.son{ 
   
    width: 100px;
    height: 50px;
    background: pink;
}

第二种方法(老方法)

父元素(容器)设置display为-webkit-box,并设置水平主轴上的元素居中,垂直交叉轴上的元素居中。

*{ 
   
    margin: 0;
    padding: 0
}
.father{ 
   
    width: 400px;
    height: 400px;
    border: 1px dashed black;
    display: -webkit-box;
    -webkit-box-pack: center;
    -webkit-box-align: center
}
.son{ 
   
    width: 100px;
    height: 50px;
    background: pink;
}

上述两种方法效果是相同的,如下所示:
在这里插入图片描述
其实以上两种方法都是在父元素中分三步来实现,不过个人认为,还是新方法更好记一点儿吧,建议使用第一种方法。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/134037.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • MCDEX 与 Celer cBridge 达成合作,将更多用户带向以太坊二层

    MCDEX 与 Celer cBridge 达成合作,将更多用户带向以太坊二层我们很高兴地宣布,MCDEX已与Celer达成合作并集成了cBridge,让用户能够以更低的成本和延迟在部署于Arbitrumrollup上的MCDEX中桥接来自其他一层链和以太坊二层的资产。CelercBridge还允许MCDEX用户跳过Arbitrum的7天等待期,以提高DeFi流动性及交易效率,进一步推动对MCDEX的采用。用户现可通过MCDEX上的集成链接访问cBridge。此外,cBridge还将支持MCDEX的治理代币MCB从Arbitrum到以太坊的跨链快速提…

  • MOS管功率放大器电路图与原理图文及其解析[通俗易懂]

    MOS管功率放大器电路图与原理图文及其解析[通俗易懂]放大器电路的分类本文介绍MOS管功率放大器电路图,先来看看放大器电路的分类,按功率放大器电路中晶体管导通时间的不同可分:甲类功率放大器电路、乙类功率放大器电路和丙类功率放大器电路。甲类功率放大器电路,在信号全范围内均导通,非线性失真小,但输出功率和效率低,因此低频功率放大器电路中主要用乙类或甲乙类功率放大电路。功率放大器是根据信号的导通角分为A、B、AB、C和D类,我国亦称为甲、乙、甲乙、丙和丁类。功率放大器电路的特殊问题(1)放大器电路的功率功率放大器电路的任务是推动负载,因此功率放大电路的重

  • VUE调试工具

    VUE调试工具3.VUE调试工具3.1调试工具安装到GitHub下载工具安装压缩包,解压到响应的文件夹。到解压的vue-devtools文件目录下安装依赖包。修改manifest.json文件,该文件在vue-devtools文件的\packages\shell-chrome下。把”persistent”:false改为”persistent”:true。”background”:{“scripts”:[“build/background.js”

    2022年10月23日
  • UML 包图

    UML 包图什么是包包可直接理解为命名空间,文件夹,是用来组织图形的封装,包图可以用来表述功能组命名空间的组织层次。•在面向对象软件开发的视角中,类显然是构建整个系统的基本构造块。但是对于庞大的应用系统而言,其包

  • org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode

    org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode

  • 华为悦盒ec6108v9a怎么刷机_华为悦盒官方固件

    华为悦盒ec6108v9a怎么刷机_华为悦盒官方固件华为悦盒EC6108V9A一、产品型号二、工具准备与资料下载1.[当贝网站教程及工具下载](https://www.znds.com/jc/article/7020-1.html)(此网站的工具可以用,但当贝的教程极其混乱,仅供动手者参考)2.固件路径三、刷机教程1.进入盒子的Androidsystemrecovery<3e>2.清除数据3.选择Applyupdatefromexternalstorage四、盒子默认密码五、常用应用一、产品型号名称型号华为悦

    2022年10月27日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号