【问题标题】:Angular Material/CSS Centre Card contents [duplicate]Angular 材质/CSS 中心卡片内容 [重复]
【发布时间】:2018-06-28 13:29:44
【问题描述】:

我正在尝试将 angular material card 中的文本居中,目前它水平居中,但我希望它垂直居中

HTML:

<mat-card class="card-initials">
    <div>
      BD
    </div>
</mat-card>

CSS:

.card-initials{
    width: 200px;
    height: 200px;
    float: right;
    margin: 15px;
}

.card-initials div{
    width: inherit;
    height: inherit;
    display: flex;
    justify-content: center;
    align-content: center;
}

这是它目前的样子:

【问题讨论】:

    标签: css angular angular-material


    【解决方案1】:

    添加align-items:center

    .card-initials div{
        width: inherit;
        height: inherit;
        display: flex;
        justify-content: center;
        align-content: center;
        align-items:center
    }
    

    https://jsfiddle.net/hvzeq4jr/1/

    【讨论】:

      【解决方案2】:

      你可以使用line-height:200px:

      .card-initials div{
          width: inherit;
          height: inherit;
          display: flex;
          justify-content: center;
          align-content: center;
          line-height:200px;
      }
      

      https://jsfiddle.net/ajthomascouk/hvzeq4jr/

      【讨论】:

      • 酷,非常感谢。
      • 这使你的行高取决于你的身高,这意味着它是静态的而不是动态的。如果我是你,我宁愿使用弹性盒
      • YW。尽可能接受答案。
      • @BenDonnelly,设置行高简直是错误。您无需知道卡片的高度(或在所有设备、所有浏览器上将其硬编码为特定值)即可将内容垂直居中。如果您使用的是 flexbox,为什么不使用align-items?在 Alex:请记住,您不仅要为 OP 负责,而且要为无限的未来用户负责。此外,角度材料有它的指令
      猜你喜欢
      • 2020-06-17
      • 1970-01-01
      • 1970-01-01
      • 2021-01-29
      • 2020-07-20
      • 2019-09-21
      • 1970-01-01
      • 1970-01-01
      • 2015-08-28
      相关资源
      最近更新 更多