繁体   English   中英

在div内垂直对齐图像和跨度

[英]Vertically aligning image and span inside div

我在一个按钮中有一个图像和一个跨度,我尝试使用:

  1. flex 与 align-items: center
  2. 将 span line-height 设置为与容器相同的高度
  3. 内联块和垂直对齐

但是如果我不向图像添加 1px padding-top,它在 div 中似乎没有真正垂直对齐,而 span 文本看起来很好,我不知道为什么。

HTML

   <button class="metabolite-btn">
      <img src="/images/metabolite/icon_question.svg" class="metabolite-btn__image">
      <span class="metabolite-btn__text">代謝物質とは</span>
   </button>

CSS

  .main-wrapper {
    .metabolite-btn {
      width: $vw-size-115-width-375;
      border-radius: 14px;
      border: none;
      height: 28px;
      background-color: $main-color;
      padding: 0 0 0 5px;
      text-align: left;
      cursor: pointer;

      &__image {
        width: $vw-size-20-width-375;
        padding: 1px 0 0 0;
      }

      &__text {
        font-size: $vw-size-12-width-375;
        font-weight: bold;
        color: $white;
        line-height: 28px;
      }
    }

要垂直对齐这两个元素,您需要将display:flexalign-items: center到作为您的按钮的父级(如下所示)

//CSS
button {
  display: flex;
  align-items: center;
}

工作演示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM