如何在网格单元格内垂直居中元素?

How to vertically center elements inside a grid cell?

<div class='card'>
<div class='imgwrap'>...</div>
<div class='cardr'>
<a class='infor' href='...'>lorem ipsum</a>
</div>
</div>

css

.card{
    display:grid;
    grid-template-columns: 54px auto;
}

.cardr{
    text-align:center;
    background:silver;
    align-items: center;  // line a
}

.infor{
    display:inline-block;
    border:1px solid #555;
    padding:4px 14px;
    border-radius:11px;
    background:gold;
    align-self:center;  // line b
}

我需要 infor 都在 cardr 内居中。

水平居中使用 text-align: centerdisplay:inline-block

使用 line a and/or line b 我想将它垂直居中但没有成功。

有什么帮助吗?

一种方法是添加 .cardr { display: flex; }.infor { margin: auto; }

这样 .infor 将水平和垂直对齐。