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"。

相關文章

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.