這里不討論行內(nèi)元素的居中!!
盒子垂直居中+水平居中的需求時(shí)經(jīng)常遇到的,看到的較多實(shí)現(xiàn)邏輯是固定content-box的寬度,通過讓margin-left和margin-top等于寬或高的負(fù)一半來實(shí)現(xiàn),抑或不固定寬度,通過JS調(diào)整margin-left和margin-top的值,這倆種方法原理都一樣。
而我接下來要講的是content不定寬的情況下,CSS的源生實(shí)現(xiàn)。
主要利用td的vertical-align: middle;屬性實(shí)現(xiàn)垂直居中,當(dāng)然你可以用display:table-cell;也可以得到一樣的效果。配合margin: 0 auto;實(shí)現(xiàn)水平居中,支持IE 8+。
效果:https://codepen.io/FreadChen/...
利用flex布局可以實(shí)現(xiàn)更多功能,這里利用了“justify-content”實(shí)現(xiàn)水平居中、“align-items”實(shí)現(xiàn)垂直居中,“flex: 0 0 auto;”讓元素保持原來的寬高。這個(gè)技術(shù)的局限在于支持IE 10+。
了解Flex請戳:http://www.ruanyifeng.com/blo...
看效果請戳:https://codepen.io/FreadChen/...
利用position + transform實(shí)現(xiàn)垂直居中
利用position的絕對定位absolute(absolute的使用技巧自行了解)將left和top都設(shè)為50%;再利用transform: translate(-50%,-50%);來補(bǔ)償元素寬高所帶來的位置影響。該技巧支持IE9+。
看效果請戳:https://codepen.io/FreadChen/...
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/113172.html
這里不討論行內(nèi)元素的居中!! 盒子垂直居中+水平居中的需求時(shí)經(jīng)常遇到的,看到的較多實(shí)現(xiàn)邏輯是固定content-box的寬度,通過讓margin-left和margin-top等于寬或高的負(fù)一半來實(shí)現(xiàn),抑或不固定寬度,通過JS調(diào)整margin-left和margin-top的值,這倆種方法原理都一樣。 而我接下來要講的是content不定寬的情況下,CSS的源生實(shí)現(xiàn)。 利用table實(shí)現(xiàn)垂直水平...
摘要:高度模型淺識為的簡寫,簡稱為塊級格式化上下文,為瀏覽器渲染某一區(qū)域的機(jī)制,中只有和中還增加了和。并非所有的布局都會(huì)在開發(fā)中使用,但是其中也會(huì)涉及一些知識點(diǎn)。然而在不同的純制作各種圖形純制作各種圖形多圖預(yù)警 一勞永逸的搞定 flex 布局 尋根溯源話布局 一切都始于這樣一個(gè)問題:怎樣通過 CSS 簡單而優(yōu)雅的實(shí)現(xiàn)水平、垂直同時(shí)居中。記得剛開始學(xué)習(xí) CSS 的時(shí)候,看到 float 屬性不...
閱讀 2588·2021-11-22 12:01
閱讀 1113·2021-11-15 11:37
閱讀 3696·2021-09-22 14:59
閱讀 1761·2021-09-04 16:45
閱讀 1391·2021-09-03 10:30
閱讀 1025·2021-08-11 11:18
閱讀 2466·2019-08-30 10:53
閱讀 2023·2019-08-29 15:13