DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> CSS入門知識 >> CSS詳解 >> 5種方法解決CSS實現垂直居中問題(2)
5種方法解決CSS實現垂直居中問題(2)
編輯:CSS詳解     

方法三

這種方法,在content元素外插入一個div。設置此divheight:50%;margin-bottom:-contentheight;。
content清除浮動,並顯示在中間。

  1. <dividdivid="floater">
  2. <dividdivid="content">
  3. Contentherediv>
  4. div>
  5. #floater{float:left;height:50%;margin-bottom:-120px;}
  6. #content{clear:both;height:240px;position:relative;}

優點:

適用於所有浏覽器

沒有足夠空間時(例如:窗口縮小)content不會被截斷,滾動條出現

缺點:

唯一我能想到的就是需要額外的空元素了(也沒那麼糟,又是另外一個話題)

方法四

這個方法使用了一個position:absolute,有固定寬度和高度的div。這個div被設置為top:0;bottom:0;。但是因為它有固定高度,其實並不能和上下都間距為0,因此margin:auto;會使它居中。使用margin:auto;使塊級元素垂直居中是很簡單的。

  1. <dividdivid="content">
  2. Contentherediv>
  3. #content{
  4. position:absolute;
  5. top:0;
  6. bottom:0;
  7. left:0;
  8. right:0;
  9. margin:auto;
  10. height:240px;
  11. width:70%;
  12. }

優點:簡單

缺點:

IE(IE8beta)中無效

無足夠空間時,content被截斷,但是不會有滾動條出現

方法五

這個方法只能將單行文本置中。只需要簡單地把line-height設置為那個對象的height值就可以使文本居中了。

  1. <dividdivid="content">
  2. Contentherediv>
  3. #content{height:100px;line-height:100px;}


優點:

適用於所有浏覽器

無足夠空間時不會被截斷

缺點:

只對文本有效(塊級元素無效)

多行時,斷詞比較糟糕

這個方法在小元素上非常有用,例如使按鈕文本或者單行文本居中。

 

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved