CSS Vertical Align
CSS 垂直置中的作法
CSS 垂直置中的七個方法(文章日期:2015.02),http://www.oxxostudio.tw/articles/201502/css-vertical-align-7methods.html
以及 stackoverflow 的答案,https://stackoverflow.com/questions/8865458/how-do-i-vertically-center-text-with-css
將行高(line-height)設定的和容器高度一樣
適用於 inline、inline-block 元素
僅適用於單行
上個作法的改良版,可適用多行(可能效果不符想像?)
增加 ::before 或 ::after 偽元素
原理說明:vertical-align 的作用是讓容器內的所有元素互相參考而垂直置中,而非參考容器高度來垂直置中
幫容器加上一個看不見、高度和容器一樣的偽元素
適用於各種未知的高度寬度
IE 7 不支援
用 calc 手動算距離
公式
top/left: calc(50% - [innerFixedInPX/2]px);
height/width: [innerFixedInPX]px;
(inside an absolute or relatively positioned parent div)
表格作法
IE 7 不支援
transform 作法
absolute 作法
要小心 absolute 的覆蓋問題
Flexbox
以及它提供的精美視覺化 demo,https://codepen.io/justd/full/yydezN/
Last updated