css中margin:0 auto居中問題深入探討
發(fā)布時間:2013-03-15 10:32:12 作者:佚名
我要評論

在CSS中加了margin:0 auto;卻沒有效果,不能居中的問題;它的本意就是上下邊界為0,左右根據(jù)寬度自適應(yīng)!其實就是~~水平居中的意思,接下來為大家介紹下兩個典型的錯誤引起的不能居中的問題
很多初學(xué)制作網(wǎng)頁的朋友,可能會遇到的一個常見問題,就是在CSS中加了margin:0 auto;卻沒有效果,不能居中的問題!margin:0 auto;的意思就是:上下邊界為0,左右根據(jù)寬度自適應(yīng)!其實就是~~水平居中的意思,呵呵!小一在這里說兩個典型的錯誤引起的不能居中的問題:
1、沒有設(shè)置寬度
<div style="margin:0 auto;"></div>
看看上面的代碼,根本沒有設(shè)置DIV的寬度,如何根據(jù)寬度自適應(yīng)呢?新手比較容易忽略的問題!
2、沒聲明DOCTYPE
①DOCTYPE是document type(文檔類型)的簡寫,在web設(shè)計中用來說明你用的XHTML或者HTML是什么版本。要建立符合標準的網(wǎng)頁,DOCTYPE聲明是必不可少的關(guān)鍵組成部分!
②看看下面的代碼,是不是很熟悉?像這樣的,在文檔最頂端,所有代碼之上的亂七八糟的東西,就是用來聲明DOCTYPE的!
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
③你有三種選擇,用來聲明DOCTYPE
* 過渡的(Transitional):要求非常寬松的DTD,它允許你繼續(xù)使用HTML4.01的標識(但是要符合xhtml的寫法),完整代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
* 嚴格的(Strict):要求嚴格的DTD,你不能使用任何表現(xiàn)層的標識和屬性,例如<br>,完整代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
* 框架的(Frameset):專門針對框架頁面設(shè)計使用的DTD,如果你的頁面中包含有框架,需要采用這種DTD,完整代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
④至于選擇哪種。。使用過度的就可以了。。
說了半天,margin:0 atuo;不起作用,不能居中的話,看看你的文檔最頂端有沒有聲明DOCTYPE,沒有就復(fù)制粘貼一下,就可以了!
還有就是 margin:0 auto; 和 margin-left:auto; margin-right:auto;的現(xiàn)實效果有時間還不一樣,其原意可能在于設(shè)置了margin-top的高度不為0時,會出現(xiàn)意想不到的效果。
1、沒有設(shè)置寬度
復(fù)制代碼
代碼如下:<div style="margin:0 auto;"></div>
看看上面的代碼,根本沒有設(shè)置DIV的寬度,如何根據(jù)寬度自適應(yīng)呢?新手比較容易忽略的問題!
2、沒聲明DOCTYPE
①DOCTYPE是document type(文檔類型)的簡寫,在web設(shè)計中用來說明你用的XHTML或者HTML是什么版本。要建立符合標準的網(wǎng)頁,DOCTYPE聲明是必不可少的關(guān)鍵組成部分!
②看看下面的代碼,是不是很熟悉?像這樣的,在文檔最頂端,所有代碼之上的亂七八糟的東西,就是用來聲明DOCTYPE的!
復(fù)制代碼
代碼如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
③你有三種選擇,用來聲明DOCTYPE
* 過渡的(Transitional):要求非常寬松的DTD,它允許你繼續(xù)使用HTML4.01的標識(但是要符合xhtml的寫法),完整代碼如下:
復(fù)制代碼
代碼如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
* 嚴格的(Strict):要求嚴格的DTD,你不能使用任何表現(xiàn)層的標識和屬性,例如<br>,完整代碼如下:
復(fù)制代碼
代碼如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
* 框架的(Frameset):專門針對框架頁面設(shè)計使用的DTD,如果你的頁面中包含有框架,需要采用這種DTD,完整代碼如下:
復(fù)制代碼
代碼如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
④至于選擇哪種。。使用過度的就可以了。。
說了半天,margin:0 atuo;不起作用,不能居中的話,看看你的文檔最頂端有沒有聲明DOCTYPE,沒有就復(fù)制粘貼一下,就可以了!
還有就是 margin:0 auto; 和 margin-left:auto; margin-right:auto;的現(xiàn)實效果有時間還不一樣,其原意可能在于設(shè)置了margin-top的高度不為0時,會出現(xiàn)意想不到的效果。
相關(guān)文章
在ie7下css居中樣式text-align:center;偏左問題解決方法
css樣式text-align:center;在ie7下偏左問題,想必有很多朋友的遇到過吧,下面有個不錯的方法,大家可以參考下,希望對大家有所幫助2013-09-21- 網(wǎng)頁制作Webjx文章簡介:水平對齊(text-align),用以設(shè)定元素內(nèi)文本的水平對齊方式。 水平對齊(text-align),用以設(shè)定元素內(nèi)文本的水平對齊方式。2009-04-02
- 很久沒有寫日記了,歸根結(jié)底是很久沒有學(xué)習(xí)了,一直都在工作,一直用到margin居中,也郁悶很了很久,網(wǎng)上看了大把的問答,最后自己就著一個例子,然后研究了一下,其實div2010-06-01
CSS中使用text-align、margin:0 auto居中的示例代碼
這篇文章主要介紹了CSS中使用text-align、margin:0 auto居中的示例代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可2020-08-17