HTML 元素居中

2021-09-23 13:58:09 字數 1441 閱讀 2514

行內元素

定寬塊元素

不定寬塊元素,方法1

不定寬塊元素,方法2

不定寬塊元素,方法3

一、需要進行水平居中的元素分類:

1,行內元素(不定寬)。

2,定寬塊元素。

3,不定寬塊元素。

二、基本居中方式:

1,行內元素:text-align:center;

2,定寬塊元素:margin:0 auto;

三、不定寬塊元素:

1.轉化為定寬塊元素:把元素封裝在table中;table元素會隨內容改變寬度,而其寬度值可以被獲取到,則可以把table看作為定寬的塊元素。

**實現:

align-center

2.轉化為行內元素:把元素封裝在乙個塊父元素中(寬度不影響);把元素設定成行內元素,把父元素設定居中屬性(父元素中的子元素根據父元素的大小進行居中,而不是父元素進行居中)。

**實現:

align-center

3.使用三層結構,position屬性:結構 great-parent>parent>div;great-parent為居中的參考體,parent向右偏移50%(以great-parent為基準),div向左偏移50%(以parent為基準)。

**實現:

style=「float:left;//獲取內容區的寬;

position:relative;left:50%;」>

left:-50%;」>align-center

*思路:

great-parent參考體;parent父容器;div內容;

1.parent的寬度=div的寬度;

2.patent以great-parent的寬度為基值,向右偏移50%;這時,parent和div的基線(左側臨界線)到達great-parent的中軸線;

3.div以parent的寬度為基值,向左偏移50%;因為parent的寬度=div的寬度,所以div的中軸線和parent的基線以及great-parent的中軸線重合,到達div居中於great-parent的效果。

*難點:float的作用;

由於未設定寬度值的塊元素,載入時會繼承父元素的寬度值,

一開始所有的元素的寬度值都等於great-parent的寬度;

當執行「float=left;」時,parent的寬度值會被重新賦值,

該值來自其內容的寬度;

parent中只有div,瀏覽器會計算div的大小,而div自身也沒有設定寬度值,則繼續計算div內部內容的大小,div內部有字元或者其他內容,div將計算這些內容的顯示大小;

然後,div把這個值往上逐級返回到瀏覽器,瀏覽器再把這個值賦給parent的寬度值。

最後,由於parent的寬度值被重新賦值,div就再次繼承parent的新的寬度值。parent的寬度=div的寬度=div內部內容的寬度。

html元素居中

1 定寬度,需要誰居中,給其設定 margin 0 auto 2 子元素設定display inline block 或 display inline 即將其轉換成行內塊級 行內元素,給父元素設定 text align center 3 定位,設定父元素為相對定位,再設定子元素為絕對定位,設定子元素...

html元素水平居中

一 行內元素水平居中 如下 行內元素在父容器中水平居中顯示。效果 二 塊狀元素水平居中 當被設定元素為塊狀元素時,text align center 就不起作用了,此時分兩種情況 定寬塊狀元素和不定寬塊狀元素。1 定寬塊狀元素 塊狀元素的寬度width為固定值 方法 滿足定寬和塊狀兩個條件的元素可以...

HTML 元素水平垂直居中

方案一 div絕對定位水平垂直居中 margin auto實現絕對定位元素的居中 相容性 ie7及之前版本不支援 div方案二 div絕對定位水平垂直居中 margin 負間距 這或許是當前最流行的使用方法。div方案三 div絕對定位水平垂直居中 transforms 變形 相容性 ie8不支援 ...