CSS如何将元素垂直居中方法锦集

本文汇总了多种CSS实现元素垂直居中的方法,包括适用于不同场景的技巧,通过复制粘贴代码即可在浏览器中直接运行验证效果。

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

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>实现元素垂直居中</title>
    <style>
        .box{
            background-color: pink;
            overflow: hidden;
            margin-bottom: 30px;
        }
        .text{
            background-color: #aaa;
            margin: 100px auto;
        }
        .box2 input{
            margin: 30px 0;
        }
        .box3 a{
            line-height: 100px;
        }
        .box4{
            height: 500px;
            position: relative;
        }
        .box4 span{
            display: inline-block;
            width: 200px;
            height: 200px;
            background-color: #eee;
            position: absolute;
            top: 50%;
            margin-top: -100px;
        }
    </style>
</head>
<body>

<b>方法一:</b>针对块级元素在块级元素里垂直居中比较容易,父级元素不设置高度,设置overflow: hidden;(记得!!)子元素也就是需要居中的这位,margin值上下设置成一样的。
<div class="box box1">
    <div class="text">块级元素</div>
</div>

针对行内块级元素在块级元素里垂直居中同上
<div class="box box2">
    <input type="text">
</div>

<b>方法二:</b>针对行级元素在块级元素里垂直居中。上述方法不好使,我这里采用行高的形式line-height: 100px;
<div class="box box3">
    <a href="" title="">a标签</a>
</div>

<b>方法三:</b>有定位(absolute)的元素可以这样设: top: 50%;margin-top: -子元素高度一半;
<div class="box box4">
    <span>有定位</span>
</div>

</body>
</html>

复制粘贴浏览器运行即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值