css,图片和文字在父元素垂直居中

14 篇文章 0 订阅
4 篇文章 0 订阅

css,图片和文字在父元素垂直居中,且图片和文字在中线对齐排列的几种方式

一,用flex的副轴来垂直居中对齐

1.副轴(由上到下)设置居中对齐(align-items: center;)即可

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>

    <style>

    .a{
        width: 200px;
        height: 200px;
        background-color: #bfa;
        /*行高,使文字在父元素中垂直居中*/
        /*line-height: 200px;*/

        display: flex;
        /*justify-content: center;*/
        /*副轴对齐方式*/
        align-items: center;
    }

    img{
        /*margin-bottom: -16px;*/
        /*和文字中线对齐*/
        /*vertical-align: middle;*/
        width: 20%;
        height: 20%;

    }

    </style>
</head>
<body>
    <div class="a">

        <img src="img/11.jpg" alt="">
    <span>nioifhiughi</span>

    </div>
</body>
</html>

效果

 

二,利用vertical-align: middle ;

1.父元素设置行高,使文字垂直居中对齐,然后对图片设置vertical-align: middle ;使图片和文字的中线对齐

2.图片没设置vertical-align: middle ,图片和文字的中线不齐。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>

    <style>

    .a{
        width: 200px;
        height: 200px;
        background-color: #bfa;
        /*行高,使文字在父元素中垂直居中*/
        line-height: 200px;

        /*display: flex;*/
        /*justify-content: center;*/
        /*副轴对齐方式*/
        /*align-items: center;*/
    }

    img{
        /*margin-bottom: -16px;*/
        /*和文字中线对齐*/
        vertical-align: middle;
        width: 20%;
        height: 20%;

    }

    </style>
</head>
<body>
    <div class="a">

        <img src="img/11.jpg" alt="">
    <span>nioifhiughi</span>

    </div>
</body>
</html>

 

三,对图片设置margin-bottom,注意值时要负数。

1.对图片未设置margin-bottom,时,图片和文字的中线不齐的,此时设置margin-bottom为 负数,图片为慢慢往下移动,当图片和文字的中线对齐时就OK了。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>

    <style>

    .a{
        width: 200px;
        height: 200px;
        background-color: #bfa;
        /*行高,使文字在父元素中垂直居中*/
        line-height: 200px;

        /*display: flex;*/
        /*justify-content: center;*/
        /*副轴对齐方式*/
        /*align-items: center;*/
    }

    img{
        margin-bottom: -16px;
        /*和文字中线对齐*/
        /*vertical-align: middle;*/
        width: 20%;
        height: 20%;

    }

    </style>
</head>
<body>
    <div class="a">

        <img src="img/11.jpg" alt="">
    <span>nioifhiughi</span>

    </div>
</body>
</html>

不齐效果

 

 一起齐的效果

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值