標籤:style blog http io ar color 使用 sp on
現代學網頁技術的同學越來越多,但是很多初學製作網頁的朋友,可能會遇到的一個常見問題,就是在CSS中加了margin:0 auto;卻沒有效果,不能置中的問題!margin:0 auto;的意思就是:上下邊界為0,左右根據寬度自適應!其實就是水平置中的意思,呵呵!小六哥哥在這裡說兩個典型的錯誤引起的不能置中的問題:
1、沒有設定寬度
沒有高度寬度的div,就好像不存在的東西一樣,除非你設定了border寬度,要不然你休想在網頁裡看到它。
<div style="margin:0 auto;"></div>
看看上面的代碼,根本沒有設定DIV的寬度,如何根據寬度自適應呢?新手比較容易忽略的問題!
2、沒聲明DOCTYPE
①DOCTYPE是document type(文件類型)的簡寫,在web設計中用來說明你用的XHTML或者HTML是什麼版本。要建立符合標準的網頁,DOCTYPE聲明是必不可少的關鍵組成部分!
②看看下面的代碼,是不是很熟悉?像這樣的,在文檔最頂端,所有代碼之上的亂七八糟的東西,就是用來聲明DOCTYPE的!
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
③你有三種選擇,用來聲明DOCTYPE
* 過渡的(Transitional):要求非常寬鬆的DTD,它允許你繼續使用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,你不能使用任何錶現層的標識和屬性,例如<br>,完整代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
* 架構的(Frameset):專門針對架構頁面設計使用的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,沒有就複製粘貼一下,就可以了!
最後面介紹我常用的一種解決方案,完美秒殺任何瀏覽器的相容
1 body {2 margin: 0;3 padding: 0;4 color:#777;5 font:12px Verdana,Arial,Tahoma;6 text-align:center;7 background:#fff;8 }
後面的div盒子模型,全部採用左浮動,float:left;
至於有的網友會問,那麼我的網頁盒子模型之間的空白怎麼弄出來呢?如果這個你想不到,我只好說你不適合學網頁前端設計,絕對沒有用到像margin-left,margin-right這些屬性。不懂的朋友私信我吧
網頁內容置中問題