【问题标题】:Is there any way to have flexbox equal height columns with baseline font alignment of text with varying font sizes and font familys?有没有办法让 flexbox 等高列与具有不同字体大小和字体系列的文本的基线字体对齐?
【发布时间】:2020-12-09 06:43:11
【问题描述】:

等高和基线不是问题。但是,如果我想在显示具有不同字体大小的文本的元素上产生悬停效果,它就会不对齐。我愿意使用 Javascript 或任何其他解决方案,但无法找到一种方法来修复具有悬停效果的元素,以便在应用基线时它不会偏离对齐。

简单示例:

.wrapper {
  height: 50px;
  display: flex;
  align-items: baseline;
}

.column {
  height: 100%;
  display: flex;
  align-items: center;
}

.span1, .span2 {
  height: 100%;
  display: inline-flex;
  align-items: flex-end;
}

.span1:hover, .span2:hover {
  background-color: gray;
}

.span1 {
  justify-content: flex-start;
  margin-right: 4px;
  font-size: 32px;
}

.span2 {
  justify-content: flex-end;
  margin-left: 4px;
  font-size: 8px;
}
<div class="wrapper">
  <div class="column">
    <span class="span1">Some content</span>
  </div>
  <div class="column">
    <span class="span2">Some content</span>
  </div
</div>

【问题讨论】:

    标签: javascript html css flexbox


    【解决方案1】:

    您可以使用一个大的伪元素来模拟悬停效果,该元素将覆盖所有区域,从而产生等列的错觉:

    .wrapper {
      display: flex;
      align-items: baseline;
      overflow:hidden;
    }
    
    .column {
      display: flex;
      align-items: center;
    }
    .column > span {
      position:relative;
      z-index:0;
    }
    .span1:hover::before, 
    .span2:hover::before {
      content:"";
      position:absolute;
      z-index:-1;
      top:-200px;
      bottom:-200px;
      left:0;
      right:0;
      background-color: gray;
    }
    
    .span1 {
      margin-right: 4px;
      font-size: 32px;
    }
    
    .span2 {
      margin-left: 4px;
      font-size: 8px;
    }
    <div class="wrapper">
      <div class="column">
        <span class="span1">Some content</span>
      </div>
      <div class="column">
        <span class="span2">Some content</span>
      </div>
    </div>

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-16
      • 2013-12-21
      • 1970-01-01
      • 2013-06-17
      • 1970-01-01
      • 2012-12-19
      • 2014-05-05
      • 2021-03-29
      相关资源
      最近更新 更多