由于默认情况下,由于position的值为static(静止的、不可以移动的),元素在文档流里是从上往下、从左到右紧密的布局的,我们不可以直接通过top、left等属性改变它的偏移。所以,想要移动元素的位置,就要把position设置为不是static的其他值,如relative,absolute,fixed等。然后,就可以通过top、bottom、right、left等属性使它在文档中发生位置偏移(注意,relative是不会使元素脱离文档流的,absolute和fixed则会!也就是说,relative会占据着移动之前的位置,但是absolute和fixed就不会)。
垂直偏移需要用到top属性,它的值可以是具体的像素,也可以是百分数。因为我们现在不知道父元素(即body)的具体高度,所以,是不可以通过具体像素来偏移的,而应该用百分数。先设置成50%。
div的中心到页面中心的距离是div自身高度的一半,我们可以使用通过margin-top属性来设置,因为div的自身高度是480,所以,需要设置他的margin-top值为-240。
.container {
width: 330px;
height: 480px;
text-align: center;
background: #FFFFFF;
position: relative;
top: 50%;
margin: -240px auto 0;
border-radius: 30px;
}