首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

CSS 實現
  • 內文本垂直水平居中的標準方案
  •      編輯:程式設計綜合問答

    原始代碼缺陷

    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。
    1. 上一篇文章:
    2. 下一篇文章:
    Copyright © 程式碼之家 All Rights Reserved