不確定元素寬度和高度時實現居中
阿新 • • 發佈:2018-12-17
一、在元素高度、寬度已知時,實現水平垂直居中就很簡單了
1 .position_all{ 2 width: 600px; 3 height: 400px; 4 position: absolute; 5 top: 50%; 6 left: 50%; 7 margin-left: -300px;//width的一半 8 margin-top: -200px;//height的一半 9 }
二、當元素本身高度不確定時,margin-left:-50%是不行的,此時百分比不是元素本身的一半。也就是說如果百分比是相對自身就可以了,那我們可以使用css3的transform來代替margin:
1 .position_all{ 2 width: 600px; 3 height: 400px; 4 position: absolute; 5 top: 50%; 6 left: 50%; 7 transform: translate(-50%,-50%); 8 }
但transform目前相容性不好(手機web開發可忽略)。或者這樣,用margin: auto;來實現水平垂直居中:
1 .position_all{ 2 width: 600px; 3 height: 400px; 4 position: absolute; 5 top: 0;left: 0;right: 0;bottom: 0; 6 margin: auto; 7 }