li {
border:1px dotted #ccc;
width:200px; height:30px;
text-align:center;
padding-bottom:auto; /* 無效 */
}
text-align:center 僅解決水平居中,垂直居中缺失。
| 方案 | 適用場景 | 核心代碼 |
|---|---|---|
| line-height = height | 單行文本,高度固定 | line-height:30px; |
| Flexbox | 多行/單行,高度固定或自適應 | display:flex; align-items:center; justify-content:center; |
| Grid | 現代瀏覽器,布局更強 | display:grid; place-items:center; |
li {
border:1px dotted #ccc;
width:200px; height:30px;
text-align:center;
line-height:30px; /* 單行文本首選 */
}
/* 多行文本兜底 */
li.multi {
display:flex;
align-items:center;
justify-content:center;
text-align:center; /* 最後一行水平居中 */
}
vertical-align:middle 僅對 inline/inline-block/table-cell 生效,對 block 元素 <li> 無效。padding-bottom:auto 不被任何瀏覽器支持,切勿使用。<li> 內包含 <span> 等內聯元素,需對內聯元素設置 vertical-align:middle 配合 line-height。