如何允许动态(高度变化)内容区域在用户屏幕上垂直居中(与屏幕大小无关),直到它到达100px
页面顶部仅剩可用空间的位置?
这是一个图:
我不确定要解决此问题的解决方案是否仅使用CSS或javascript-因此欢迎所有建议。
我的解决方案考虑到您希望您的内容位于整个页面的中心,而不仅仅是“在下面的空间”。我使用负边距实现了这一目标。
在这里查看工作示例:
HTML:
<div id="container">
<div id="table">
<div id="cell">
<div id="content">Some content</div>
</div>
</div>
</div>
CSS:
#container {
width: 100%;
height: 100%;
padding: 100px 0;
margin-top: -100px;
}
#table {
display: table;
width: 100%;
height: 100%;
margin-top: 100px;
}
#cell {
display: table-cell;
vertical-align: middle;
}
#content {
background-color: lightblue;
width: 50%;
margin: 0 auto;
}
经测试:
更新:
我曾经用过,box-sizing: border-box;
但Firefox需要额外的一个-moz-box-sizing: border-box;
。现在,它也可以在Firefox中使用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句