CSS元素垂直居中根据不同的情况,使用的垂直居中方式不同:块级元素和行级元素的垂直居中是不同的。1行级元素1.1行中的特殊元素如果行中包含特殊元素:图片、input输入框、inline-block元素或bold,使用verticle-align:middle;将对齐方式设置为垂直居中。text-bottom/text-top为bottom-aligned/top-alignment,兼容性好:IE41.2设置line-height,设置line-height等于高度值,可以实现行级元素的垂直居中兼容或者纯文本的块级元素IE42块级元素性能好2.1flex和align-items设置容器元素display:flex;对齐项目:居中;就是这样,里面的子元素在容器中垂直居中缺点:使用flex布局,使用CSS3的align-items属性,兼容性差:IE112.2flex和align-self设置容器元素display:flex;,子元素设置align-self:center;align-self属性允许单个项目与其他项目具有不同的对齐方式,可以覆盖align-items属性。默认值为auto,表示继承父元素的align-items属性。如果没有父元素,相当于stretch,同样兼容性差:IE112.3绝对定位父元素设置相对定位position:relative;子元素设置绝对定位position:absolute;顶部:0;左:0;底部:0;右:0;保证金:自动;关键是设置top:0;左:0;底部:0;右:0;margin:auto表示水平和垂直4两个方向的margin值计算得到兼容IE7
