css 實現div 內容垂直置中

來源:互聯網
上載者:User

一、單行內容的置中
只考慮單行是最簡單的,無論是否給容器固定高度,只要給容器設定 line-height 和 height,並使兩值相等,再加上 over-flow: hidden 就可以了:
.middle-demo-1{
   height: 4em;
   line-height: 4em;
   overflow: hidden;
}

優點:
1. 同時支援塊級和內聯極元素
2. 支援所有瀏覽器
缺點:
1. 只能顯示一行
2. IE6中不支援<img>等的置中
要注意的是:
1. 使用相對高度定義你的 height 和 line-height
2. 不想毀了你的布局的話,overflow: hidden 一定要

 如果還想讓div裡的文字水平置中,加上“text-align:center;”即可;代碼如下:

      說明:如果在父級元素定義text-align:center;這個的意思就是在父級元素內的內容置中;對於IE這樣設定就已經可以了。但在mozilla中不能置中。解決辦法就是在子項目定義時候設定時再加上“margin-right:auto; margin-left:auto;”。但如果文檔的doctype 都採用 xhtml Transitional 模式的話,都可採用後者就行。

二、多行內容置中,且容器高度可變

也很簡單,給出一致的 padding-bottom 和 padding-top 就行

.middle-demo-2{
   padding-top: 24px;
   padding-bottom: 24px;
}

優點:
1. 同時支援塊級和內聯極元素
2. 支援非常值內容
3. 支援所有瀏覽器
缺點:
容器不能固定高度

三、如何使圖片在DIV中垂直置中,
可以用背景的方法。如下:
<div id="loading" style="border:1px solid #FFD47F;width:80px;height:40px;text-align:center;background:url(ajax-loader.gif) no-repeat center;">
</div>
     關鍵就是最後的center,這個參數定義圖片的位置。還可以寫成“top  left”(左上方)或者"bottom right"等,也可以直接寫數值"50 30"。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.