如何水平居中一個(gè)元素?

參考鏈接:

http://www.w3cplus.com/css/elements-horizontally-center-with-css.html

1、行內(nèi)元素的居中,例如想設(shè)置文本、圖片等行內(nèi)元素水平居中時(shí),可以通過(guò)父元素設(shè)置text-align:center來(lái)實(shí)現(xiàn),即給需要設(shè)置的元素添加一個(gè)父元素的容器,然后設(shè)置這個(gè)父元素(容器)的text-align屬性即可。方法簡(jiǎn)單,原理也很容易理解,需要注意的是只能針對(duì)行內(nèi)元素;

2**、寬度一定的塊狀元素居中**。因?yàn)槭菈K狀元素,所以就沒(méi)辦法運(yùn)用第一種方法的text-align屬性了,這次我們是通過(guò)對(duì)需要設(shè)置的元素的“左右margin”值為“auto”來(lái)實(shí)現(xiàn),margin的上下值可以根據(jù)需求隨意設(shè)置,但是左右一定要為”auto”!需要注意的是,在設(shè)置 margin:20px auto 之前,一定要先設(shè)置width的值,即最后的設(shè)置樣例為:

div { border:2px solid red;width:100px; margin:20px auto;}

即2個(gè)像素寬的紅色實(shí)體邊框,整個(gè)div元素的寬度為100像素,上下距離瀏覽器的空白邊距為20像素,左右根據(jù)內(nèi)容自動(dòng)調(diào)整,這樣就實(shí)現(xiàn)了塊狀元素的居中顯示,別忘了,要先設(shè)置width:寬度值!寬度值!寬度值!這種方法優(yōu)點(diǎn)是簡(jiǎn)單易懂,兼容性也強(qiáng),但是擴(kuò)展性比較差,無(wú)法自適應(yīng)未知寬度的元素。

3、寬度不確定塊狀元素的居中顯示。這里大概也可以分為三個(gè)方法:

1)運(yùn)用table標(biāo)簽;2)設(shè)置display:inline;3)設(shè)置position:relative和left:50%。

3.1、運(yùn)用table標(biāo)簽。第一步:在需要設(shè)置的元素外面加上一個(gè)table標(biāo)簽(包括,是不是有點(diǎn)類似設(shè)置行內(nèi)元素時(shí)添加一個(gè)父元素的容器呢?)。第二步:給這個(gè)table設(shè)置”左右margin居中”(這里又和設(shè)置定寬塊狀元素的方法一樣了)。代碼樣例:


總結(jié):就是將需要進(jìn)行居中的元素,用一個(gè)大表格將其圍起來(lái)(而且這個(gè)表格只有這一個(gè)單元格哦),然后設(shè)置表格的屬性(如第2條方法)居中就行。不過(guò)缺點(diǎn)是加了不少的無(wú)用標(biāo)簽,代碼看起來(lái)比較臃腫。

3.2、改變塊級(jí)元素的display為inline類型,然后設(shè)置text-align:center來(lái)實(shí)現(xiàn)居中效果。代碼樣例:


總結(jié):基本思想也就是將父元素(容器)先往右偏移父容器寬度的50%,然后再將列表的元素向左相對(duì)偏移50%,就可以得到居中的效果。


more:

父元素寬度已固定:

1.可以在外層加一個(gè)div,外層的div采用margin居中,里層的div設(shè)置寬度為100%。

2、設(shè)置當(dāng)前div的寬度,然后設(shè)置margin-left:50%; position:relative; left:50%;其中的left是寬度的一半。

父元素寬度未知:

3.父元素和子元素同時(shí)左浮動(dòng),然后父元素相對(duì)左移動(dòng)50%,再然后子元素相對(duì)右移動(dòng)50%,或者子元素相對(duì)左移動(dòng)-50%也就可以了。

4.父元素和子元素同時(shí)左浮動(dòng),然后父元素相對(duì)左移動(dòng)50%,再然后子元素相對(duì)左移動(dòng)-50%。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 問(wèn)答題47 /72 常見(jiàn)瀏覽器兼容性問(wèn)題與解決方案? 參考答案 (1)瀏覽器兼容問(wèn)題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 14,114評(píng)論 1 92
  • 收聽(tīng)音頻,戳鏈接,舊號(hào)itclan已暫停使用,歡迎關(guān)注微信itclanCoder公眾號(hào)可收聽(tīng)更多音頻 前言 關(guān)于網(wǎng)...
    itclanCoder閱讀 8,346評(píng)論 3 30
  • 一 外部式css樣式 (也可稱為外聯(lián)式)就是把css代碼寫一個(gè)單獨(dú)的外部文件中,這個(gè)css樣式文件以“.css...
    KunMitnic閱讀 1,119評(píng)論 0 1
  • 本文主要是起筆記的作用,內(nèi)容來(lái)自慕課網(wǎng). 認(rèn)識(shí)CSS樣式 CSS全稱為“層疊樣式表 (Cascading Styl...
    0o凍僵的企鵝o0閱讀 2,749評(píng)論 0 30
  • CSS格式化排版 1、字體 我們可以使用css樣式為網(wǎng)頁(yè)中的文字設(shè)置字體、字號(hào)、顏色等樣式屬性。下面我們來(lái)看一個(gè)例...
    張文靖同學(xué)閱讀 1,364評(píng)論 0 3

友情鏈接更多精彩內(nèi)容