面试中不管是笔试题还是面试题,一般很容易被问到如何实现垂直水平居中,这里总结四种方法作为参考
(1)margin:auto法
css:div{width: 400px;height: 400px;position: relative;border: 1px solid #465468;}img{position: absolute;margin: auto;top: 0;left: 0;right: 0;bottom: 0;}html:<div><img src="mm.jpg"></div>定位为上下左右为0,margin:0可以实现脱离文档流的居中.
(2)margin负值法
.container{width: 500px;height: 400px;border: 2px solid #379;position: relative;}.inner{width: 480px;height: 380px;background-color: #746;position: absolute;top: 50%;left: 50%;margin-top: -190px; /*height的一半*/
margin-left: -240px; /*width的一半*/
}
补充:其实这里也可以将俭朴的钥匙-top和margin-left负值替换成,
transform:translateX(-50%)和transform:translateY(-50%)
(3)table-cell(未脱离文档流的)
设置父元素的display:table-cell,并且vertical-al