CSS水平居中

假設html元素為下面這樣,父容器和子容器的寬高均為不確定

<div class="parent">
    <div class="child">Demo</div>
</div>

下面四種方案對其水平居中
方案一: test-align+inline-block

.parent{
    text-align: center;
}
.child{
    display: inline-block;
}

優點:兼容性好;
缺點:text-align: center;會被child元素繼承下來,需要額外的代碼來修復.

方案二 margin+table

.child{
    display: table;
    margin:0 auto;
}

優點:只對child元素進行處理.

方案三 absolute+transform

.parent{
    position: relative;
}
.child{
    position: absolute;
    left:50%;
    transform: translateX(-50%);//參照物為自身
}

優點:脫離文檔流,不會對其他元素產生影響;缺點:兼容性差.

方案四 flex+justify—content

.parent{
    display: flex;
    justify-content: center;
}

優點:只對parent元素進行設置

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽默認的外補...
    _Yfling閱讀 13,786評論 1 92
  • 移動開發基本知識點 一.使用rem作為單位 html { font-size: 100px; } @media(m...
    橫沖直撞666閱讀 3,507評論 0 6
  • H5移動端知識點總結 閱讀目錄 移動開發基本知識點 calc基本用法 box-sizing的理解及使用 理解dis...
    Mx勇閱讀 4,604評論 0 26
  • display:設置元素的顯示方式 display:block(塊級元素) 默認為父元素寬高,可設置寬高相對前序換...
    bluishwhiteC閱讀 669評論 0 0
  • 塊級元素中的行內元素水平垂直居中 塊級元素在塊級元素中的水平垂直絕對居中 未完待續......
    petertou閱讀 373評論 0 0