在 table 内对齐文本

Align text inside table

我目前有 3 个项目的列表。每行都有一个小图标和里面的文本,所有这些都固定在每行的底部,但是我需要居中的文本,以便它与每个图标的中间对齐。这是我最初尝试使用与跨度对齐的代码,但 idk.

<ul id="server-list">
   <li><img src="images/home-icon.png" class="item" alt="Server Name" /> <span id="s-name">Server Name</span></li>
   <li><img src="images/screen-icon.png" class="item" alt="Game Mode" /> <span id="s-mode">Server Game Mode</span></li>
   <li><img src="images/map-icon.png" class="item" alt="Map Name" /> <span id="s-map">Server Map Name</span></li>
</ul>

这是我的css

.item {
    margin: 8px;
    height: auto;
    width: 13%;
}
#server-list span {
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    text-align: left;
    font-size: 18px;
    padding-top: -10px;
}
#server-list li {
    vertical-align: middle;
    background: url("images/icon-bg.png") no-repeat;
    background-size: 420px auto;
    background-repeat: no-repeat;
    list-style: none;
    height: 85px;
}

我需要从

O____

O----

display: inline-block;vertical-align: middle;同时给imagespan

.item{
    margin:8px;
    height: auto;
    width: 13%;
    vertical-align: middle;
    display: inline-block;
}

#server-list span {
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    text-align: left;
    font-size: 18px;
    padding-top: -10px;
     vertical-align: middle;
    display: inline-block;

}

Fiddle

.item{
    margin:8px;
    height: auto;
    width: 13%;
}

#server-list span {
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    text-align: left;
    font-size: 18px;
    padding-top: -10px;
    display: table-cell;
    vertical-align: middle;
    padding-right: 30em;
    width: 300em;
    

}

#server-list li {
    vertical-align: middle;
    display: table;
    background: url("images/icon-bg.png") no-repeat;
    background-size: 420px auto;
    background-repeat: no-repeat;
    list-style:none;
  
   

}

试试这个