像Lino Rosa 提到的绝对居中是这里最好的方法,可以轻松地进行水平和垂直居中,同时允许您添加一些响应式触摸,例如修复您的身高问题。
理想情况下,您应该对宽度和高度声明使用百分比,以便您的内容随视口而变化。当然,有时您只需要像素 :-)
这是我所做的:
.Absolute-Center {
position: absolute;
top: 0; right: 0; bottom: 0; left: 0;
margin: auto;
}
#container {
width: 960px;
max-width: 90%;
height: 740px;
max-height: 90%;
overflow: auto;
}
通过设置 amax-height
和max-width
,即使它的宽度小于 960 像素或高度小于 740 像素,盒子也永远不会超过容器(在本例中为浏览器视口)的 90%,因此即使是小屏幕也能看到一个很好的居中盒子。overflow: auto
确保如果内容比框长,用户可以在框中滚动以查看其余内容。
查看演示
如果无论屏幕大小如何,您都必须使框恰好为 960 像素 x 740 像素(强制用户滚动以查看小窗口上的所有内容),则仅将绝对居中样式应用于#container
使用媒体查询,如下所示:
#container {
width: 960px;
height: 740px;
overflow: auto;
margin: auto;
}
@media screen and (min-height:740px) and (min-width: 960px) {
#container {
position: absolute;
top: 0; right: 0; bottom: 0; left: 0;
}
}
查看演示