【问题标题】:Why these two spans doesnt align vertically at the same position?为什么这两个跨度不在同一位置垂直对齐?
【发布时间】:2015-04-26 01:51:33
【问题描述】:

我是一个菜鸟,我今天尝试用一个 img 和一个 p 元素制作一个有 2 个跨度的 div。嗯,下面是相关代码,但是两个span都停留在diff的垂直位置。不知道为什么,因为它们的css都是一样的,而且wrapper的宽度也够长了。

<div id="bannerwrapper">
    <span>
        <a href="mailto:xxxx@gmail.com"><img src="mail.png"></a>
    </span>
    <span>
        <strong><a href="mailto:xxxx@gmail.com">xxxx@gmail.com</a></strong>
    </span>
</div>

而且,css是

*{
    margin: 0;
    padding: 0;
    line-height: 1.6;
}

#bannerwrapper{
    width: 163px;
    height: 21px;
    margin: 10px auto;
}

#bannerwrapper span{
    display: inline-block;
    height: 21px;
}

#bannerwrapper span img{
    width: 30px;
    height: 21px;
}

最后,我给了第二个 span 一个 float right css 来解决这个问题,肯定会的。

但我并没有离开问题,我不只是寻求解决方案,我想知道为什么,为什么两个跨度之前没有保持在相同的垂直位置?

感谢您的宝贵时间。

【问题讨论】:

    标签: html css webpage web-frontend


    【解决方案1】:

    图片下方有一点空隙,将img声明为块或添加vertical-align

    #bannerwrapper span img{
        width: 30px;
        height: 21px;
        display: block;
    }
    

    #bannerwrapper span img{
        width: 30px;
        height: 21px;
        vertical-align: middle;
    }
    

    您有两种可能的解决方案来解决这个问题。更多为什么需要 https://stackoverflow.com/a/27177987/

    【讨论】:

    • 再次感谢“Something more”链接,现在我明白了 :)
    【解决方案2】:

    您必须将vertical-align: middle 添加到img 元素:

    * {
      margin: 0;
      padding: 0;
      line-height: 1.6;
    }
    #bannerwrapper {
      width: 163px;
      height: 21px;
      margin: 10px auto;
    }
    #bannerwrapper span {
      display: inline-block;
      height: 21px;
    }
    #bannerwrapper span img {
      width: 30px;
      height: 21px;
      vertical-align: middle;
      /*Add vertical align middle*/
    }
    <div id="bannerwrapper"> <span>
            <a href="mailto:xxxx@gmail.com"><img src="http://placehold.it/200x100"></a>
        </span>
      <span>
            <strong><a href="mailto:xxxx@gmail.com">xxxx@gmail.com</a></strong>
        </span>
    
    </div>

    我强烈建议查看vertical-align 属性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-15
      • 2014-02-21
      • 1970-01-01
      • 2018-04-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-05
      相关资源
      最近更新 更多