div居中的方法

2021-06-10 20:51:41 字數 1311 閱讀 6803

css 如何使div層水平居中

今天用css碰到個很棘手的問題,div本身沒有定義自己居中的屬性,

網上很多的方法都是介紹用上級的text-align: center然後巢狀一層div來解決問題.

可是事實上這樣的方法科學嗎?

經過網路搜尋和親自實驗得出以下結論:

正確的也是對頁面構造沒有影響的設定如下:

對需要水平居中的div層新增以下屬性:

margin-left: auto;

margin-right: auto;

經過這麼一番設定問題似乎解決了,在ff中已經居中了,可是在ie中看竟然還是沒有居中!

鬱悶了一下午,就是找不出問題所在,還特地比較了網上的文章竟然一模一樣.

問題到底出在**呢?

感謝網友樂天無用幫忙找出了這個邪門問題的原因.

原來是l-blog預設沒有在html前加上dtd,於是ie就以html而不是xhtml來解釋文件.

問題並不在css而在xhtml網頁本身.

需要加上這樣的**才能使得上述設定有效果:

如果您希望更為嚴格的xhtml 1.0 strict或者xhtml 1.1請查閱相關文件.

以上測試均基於windows xp sp2版ie6和firefox 1.0最終版.

如何使div居中

主要的樣式定義如下:

body

#center

說明:首先在父級元素定義text-align: center;這個的意思就是在父級元素內的內容居中;對於ie這樣設定就已經可以了。但在mozilla中不能居中。解決辦法就是在子元素定義時候設定時再加上「margin-right: auto;margin-left: auto; 」

需要說明的是,如果你想用這個方法使整個頁面要居中,建議不要套在乙個div裡,你可以依次拆出多個div,只

要在每個拆出的div裡定義margin-right: auto;margin-left: auto; 就可以了。

body

關鍵就是最後的center,這個引數定義的位置。還可以寫成「top left」(左上角)或者"bottom right"等,也可以直接寫數值"50 30"

如何使文字在div中垂直居中

如果是文字,便不能用背景方法,可以用增高行距的辦法變通實現垂直居中,完整**如下:

test content

說明:vertical-align:middle;表示行內垂直居中,我們將行距增加到和整個div一樣高line-height:200px;然後插入文字,就垂直居中了。

css+div控制頁面中元素垂直居中** 全域性和區域垂直居中

另一方法:

div居中的方法

居中,這是個老生常談的問題。我一直以為這個根本不用去想他,用多了自然知道,沒想到在一次面試上碰到,腦子裡一時居然想不起來,妥妥的是掛了,回家趕緊做下筆記 先上html的內容 father son再是一部分預設的樣式 需求是 讓son在father裡上下居中。第一種方法 father son 第二種方...

div水平居中及div水平垂直居中的方法總結

1 margin auto wrap wrap txt2 text align center 3 absolute margin偏移 wrap wrap txt4 display box 文字 box pack5 absolute transform 1 line height 文字 wrap tx...

居中div的方法總結

1 margin 定寬 width 100px margin 0 auto 2 table margin display table margin 0 auto display table 在表現上類似 block 元素,但是寬度為內容寬。3 inline block text align 用於多個...