没有巨大的行间距不能垂直对齐多行

Can't vertical align multiple lines without huge line gaps

我有一个 JS MixItUp,我把它放在文本框中,但我似乎无法让它在一个框中获得多行、垂直对齐并留在元素内。

要垂直对齐,我需要设置行高并将vertical-align设置为中间。

我将行高设置为框的大小 (45px)。

在此this CodePen中,您可以看到底部框上的问题 - 这些词开箱即用。

.courses span {
    border: 1px solid white;
    color: black;
    display: grid;
    font-size: 11px;
    height: 45px;
    background: #ffffff;
    border: 2px solid #505050;
    line-height: 45px;
    vertical-align: middle;
    margin: 4px 0;
    -webkit-transition: all .4s ease;
            transition: all .4s ease;
}

我也试过跟随a vertical alignment example CodePen,但单行会在框的顶部。

使方框 position 和课程跨度 position absolute。 例如,

box{
    position:relative;
    display:block;
}

.courses span{
    position:absolute;
    text-align: center;
}

尝试在您的代码中将这些与 vertical-align 属性以外的其他属性一起使用。

css 代码中的一些更改。

试试这个更新的代码笔:- https://codepen.io/bhuwanb9/pen/zwMJWj

.courses li {
    text-align: center;
    font-size: 14px;
    width: 19%;
    margin: 0.5%;
    background: #ffffff;
    border: 2px solid #505050;
    position:relative;
    height: 65px;
    box-sizing:border-box;
 }

 .courses span {
    color: black;
    font-size: 11px;
    line-height: normal;
    position:absolute;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
    transform: translateY(-50%);
    top:50%;
 }