input的text和button在height高度一样的情况下显示的效果在高度上有差距

input的text和button在height高度一样的情况下显示的效果在高度上有差距

原html文件

  <a href="#">
      <input class="hsech1" type="text">
  </a>
  <a href="#">
      <input class="hsech2" type="button">
  </a>
  

原CSS文件

    .hsech1{
        float: left;
        width: 238px;
        height: 52px;
    }
    .hsech2{
        float: right;
        width: 50px;
        height: 52px;
        border-left: none;
        background-image: url(./images/icon/search.svg);
        background-repeat: no-repeat;
        background-position: center;
        background-size: 20px;
    }

两个元素的height:52px;但显示的高度有差距
在这里插入图片描述

问题出现的原因

button在高度计算上始终使用了Quirks模式。在Quirks模式下,边框的计算是在元素的宽度内的,而不像标准模式一样计算在外部。button的高度包含边框的高度,而文本框text则不包含边框高度。这就导致input高度会比button高两像素。
参考网址:https://blog.csdn.net/qq_42527726/article/details/102718778

解决办法

二选一
一、
给input加上
box-sizing: border-box;
二、或者给button加上
box-sizing: content-box;

修改后的css代码

        float: left;
        width: 238px;
        height: 52px;
        box-sizing: border-box;
    }
    .hsech2{
        float: right;
        width: 50px;
        height: 52px;
        border-left: none;
        background-image: url(./images/icon/search.svg);
        background-repeat: no-repeat;
        background-position: center;
        background-size: 20px;
    }

修改后的效果

在这里插入图片描述
没有高差啦

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值