css vertical-align实现行内块和文字水平居中对齐

行内快元素和行内元素,在浏览器看来会把行内块元素当作行内元素来处理,
所以图片的会和文字的基线对齐

vertical-align使用场景:
经常用于设置图片或者表单(行内块元素)和文字垂直对齐
语法:
vertical -align:
值                   描述
baseline        默认,元素位置放在父元素的基线上
top            把元素的顶端于行内最高元素的顶端对齐
middle          把此元素放在父元素的中部
bottom          把元素的顶端与行内最低元素的顶端对齐

1.使文字和图片居中对齐

操作:在img添加vertical-align: middle;属性即可解决
代码例子:

<style>
        img{
            vertical-align: middle;
        }
     </style>
</head>
<body>
    <img src="../css6/images/ldh.jpg" alt="">pink 做好自己,从我做起
</body>

运行结果:
在这里插入图片描述

2.解决input输入框和button确认按钮的不一致问题

    <style>
        *{
            padding: 0;
            margin: 0;
        }
        input{
            box-sizing: border-box;
            height: 50px;
/* 解决input输入框和button确认按钮的不一致问题 */
        }
    </style>
</head>
<body>
    <input type="text">
    <input type="button" value="确认">
</body>

有一个缝隙
在这里插入图片描述
在input中添加vertical-align: middle;就解决了
在这里插入图片描述

3.解决图片和父盒子大小不一样的问题

<style>
        * {
            padding: 0;
            margin: 0;
        }

        div {
            width: 250px;
            background-color: pink;
        }

        img {
            /* vertical-align: middle; */
        }
    </style>
</head>

<body>
    <div>
        <img src="images/img.jpg" alt="">
    </div>
</body>

可以很明显的看到图片下面有多余的地方
浏览器把行内和行内块标签当做文字处理,默认基线对齐
在这里插入图片描述
此时,给img添加vertical-align: middle;就可以解决了
在这里插入图片描述
给图片添加display: block;也可以解决

4.让图片在父盒子里垂直居中

<style>
        * {
            padding: 0;
            margin: 0;
        }

        div {
            width: 600px;
            height: 600px;
            line-height: 600px;
            background-color: pink;
        }
        img {
            vertical-align: middle;
        }
    </style>
</head>

<body>
    <div>
        <img src="images/img.jpg" alt="">
    </div>
</body>

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值