总结使用css样式居中的方法

本文总结了九种使用CSS实现元素垂直居中的方法,包括只用line-height、弹性盒子Flex、列表标签display:table-cell、定位配合translate或margin、伪元素、margin: 0 auto、text-align和inline-block、以及定位和transform:translate。每种方法都有其适用场景和特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

css垂直居中

1】方法一:只用padding

如果是设置字体居中的话,只需要在放该文本的外部容器设置padding-toppadding-bottom相等即可;但是外部容器不能设置高度,如果设置高度的话,就不能自动的根据文本大小设置高度了。
在这里插入图片描述
如果设置了外部容器的高度的话,我们又改怎么处理呢?

这时候就需要使用到line-height属性(也就是基线之间的距离),line-heightfont-size之差可以的到行距(行距就是文字顶部和底部之间的距离)。
在这里插入图片描述
这里我们直接设置子元素的line-height和父元素的高度相等(一般用于单行文字,多行文字的话就不行)
在这里插入图片描述
2】方法二:使用弹性盒子Flex
在这里插入图片描述
flex-direction:row|colum 主轴是水平的,交叉轴是垂直的 | 交换主轴和交叉轴

justify-content设置基于主轴对齐方式

align-items设置基于交叉轴对齐方式在这里插入图片描述

3】方法三:使用列表标签,使用display:table

注意:如果不是使用表格的话,就很少用这种布局
在这里插入图片描述
接着子元素设置display:table-cellvertical-align:middle就可以横排显示然后垂直居中
在这里插入图片描述
4】方法四:使用栅格布局grid在这里插入图片描述

5】方法五:使用定位再配合(translate:负数)或者(margin:负数)

这个方法最大的缺点就是脱离了文档流

在这里插入图片描述
也可以使用margin来调整
在这里插入图片描述

6】方法六:伪元素再配合inline-block

(inline-block属性需要多个元素才能形成内联元素位置的调整,否则vertical-align属性不能生效)(所有的内联元素中根据高度最高的元素来完成垂直方向的对齐)

创建一个span标签和这个搜索框做兄弟元素,都设置inline-block这样就都具备文本和块级元素属性了,使用vertical-align进行他们之间相对的调整。最后再设置新元素的width:0来隐藏就可以了。
在这里插入图片描述
以这样我们就可以知道可以创建一个伪元素,让其content为空,再拷贝刚才的代码,来实现
在这里插入图片描述
7】方法七:使用margin: 0 auto;
在这里插入图片描述
8】方法八:使用text-align和inline-block
在这里插入图片描述
9】方法九:定位和transform:translate(-50%,50%);
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值