首页 > 解决方案 > 如何在角度 4 中对齐左右文本 mat-card-header?

问题描述

我需要对齐标题标签左右两侧标题中的文本内容。我尝试了不同的想法,但没有一个适合我。帮我。

 <div style="width: 40%">
  <mat-card>
    <mat-card-header class="card-container">
      <mat-card-title class="card-container-right"> Test right</mat-card-title>
      <mat-card-title class="card-container-left"> Test left</mat-card-title>
    </mat-card-header>
    <mat-card-content>
    </mat-card-content>
  </mat-card>
</div>

标签: htmlangularalignmentangular-materialmat-card

解决方案


如果您想继续使用这些mat-title元素,也可以这样做:

查看StackBlitz 示例

在您的(我称之为)example-card.component.html 文件中

<mat-card  >
<mat-card-header>
 <mat-card-title class="card-container-left"> Test left</mat-card-title>
 <mat-card-title class="card-container-right"> Test right</mat-card- title>
</mat-card-header>
<mat-card-content>
</mat-card-content>

然后在你的example-card.component.css

.card-container-right{
  display: inline;
  float: right;
}

.card-container-left{
  display: inline;
}

..最后在你的styles.css中

.mat-card-header-text{
  width: 100% !important;
}

解决这个问题的技巧是覆盖 Angular 材质.mat-card-header-text使其 100% 的宽度为mat-card-header. 否则,它的行为类似于内联元素,并且只占用其子元素文本的宽度。防止你把它们隔开。


推荐阅读