css中將div設(shè)置為居中的方法是設(shè)置定位,例如【position:absolute;】或【margin:auto;】。當(dāng)我們需要充分考慮瀏覽器的兼容性時(shí),可以使用Flex布局方法。
本文操作環(huán)境:windows10系統(tǒng)、css 3、thinkpad t480電腦。
在css中設(shè)置div居中顯示,我們可以通過(guò)如下幾種方法來(lái)實(shí)現(xiàn)。
定位法:position:absolute
如果子級(jí)div有定義寬和高的話就可以用這個(gè)方法。注意:margin-top,和margin-left的值均為高和寬值的一半。大家可以去嘗試下看看效果。
margin:auto法
這個(gè)也可以是定位法。用這個(gè)方法要求子級(jí)div必須設(shè)置寬的值,不然沒(méi)有效果哦~margin:auto是水平垂直都居中,如果僅僅設(shè)置水平居中,可設(shè)置為margin:auto 0;同理,如果僅僅設(shè)置垂直居中,可設(shè)置為margin:0 auto
display:table-cell法
這個(gè)方法主要針對(duì)多行文字內(nèi)容的垂直居中對(duì)齊。注意:text-align:center設(shè)置了文字的水平居中對(duì)齊,vertical-align:middle設(shè)置的是垂直居中對(duì)齊。
transform:translate(x,y)法
這個(gè)是css3中的新屬性,如果子級(jí)元素沒(méi)有設(shè)置寬和高值的話可以用這個(gè)方法來(lái)實(shí)現(xiàn)。這在我們做自適應(yīng)頁(yè)面的時(shí)候可以用到。
before,after偽元素法
這個(gè)也是讓子級(jí)元素垂直居中了。如果還想要水平居中的話可以配合其他幾種方法配合使用來(lái)實(shí)現(xiàn),比如給子級(jí)元素設(shè)置:margin:0 auto;這樣就水平和垂直都居中了。
Flex布局法
這個(gè)方法要充分考慮瀏覽器的兼容性。要垂直居中的元素也是無(wú)需設(shè)置寬和高的值,可以用在自適應(yīng)頁(yè)面中來(lái)實(shí)現(xiàn)水平垂直居中。
相關(guān)視頻推薦:css視頻教程