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