Html 如何垂直对齐包装,使其在(移动)屏幕上居中?
我正在练习使网页响应移动屏幕分辨率。我成功地控制了宽度。我如何管理这个高度?我的包装纸继续保持在顶部,而不是垂直对齐 我已经看到了很多关于这个问题的问题,但是还没有找到在我的css上指定的解决方案。希望有人能帮我 HTMLHtml 如何垂直对齐包装,使其在(移动)屏幕上居中?,html,css,css-float,vertical-alignment,Html,Css,Css Float,Vertical Alignment,我正在练习使网页响应移动屏幕分辨率。我成功地控制了宽度。我如何管理这个高度?我的包装纸继续保持在顶部,而不是垂直对齐 我已经看到了很多关于这个问题的问题,但是还没有找到在我的css上指定的解决方案。希望有人能帮我 HTML <body> <div class="wrapper"> <div class="header"> </div> <div class="content"> <a hre
<body>
<div class="wrapper">
<div class="header">
</div>
<div class="content">
<a href="http://test"><div id="topleftbox"></div></a>
<a href="http://test"><div id="toprightbox"></div></a>
<a href="http://test"><div id="bottomleftbox"></div></a>
<a href="http://test"><div id="bottomrightbox"></div></a>
</div>
</div>
您可以使用
display:table
来呈现类似于表格和表格单元格的div
更多信息:与水平居中不同,CSS从来没有垂直居中的方法。唯一的方法是使用javascript获取“window.innerHeight”,然后将HTML元素(包装器)的高度添加到其中,并将总高度一分为二。并将其设置为新的顶部位置
此外,您的“包装器”的高度为100%,这意味着它将填充整个屏幕高度。如果它与屏幕的高度相同,它将不会居中。此外,它的宽度为100%,我怀疑“边距:0自动”有什么作用。CSS中的垂直对齐有几个选项: 1。通过表格单元格。(这在IE8+中确实有效) 2。行高=元素的高度(如果你有多行文字,我想这看起来很时髦) 你可以找到更多的选择,但我相信
display:table
应该是你现在最好的选择
使用
显示:表格单元格代码>您需要模拟完整的表结构。幸运的是,您不必添加任何额外的标记,因为您可以根据html
和body
标记进行样式设置:
html{display:table;width:100%;height:100%;}
body{display:table-row;}
.wrapper{
display:table-cell;
vertical-align:middle;
text-align:center;
}
注意:这是垂直居中的.wrapper
内容,而不是div本身
{
display:table-cell;
vertical-align:middle;
}
{
height:10em;
line-height:10em;
}
html{display:table;width:100%;height:100%;}
body{display:table-row;}
.wrapper{
display:table-cell;
vertical-align:middle;
text-align:center;
}