【发布时间】:2020-09-02 11:19:57
【问题描述】:
我正在尝试为我正在开发的网站实现特定的布局,但我不知道该怎么做。布局将如下所示:
标题没有什么特别之处。页脚有position: fixed 和bottom: 0px。主体内容需要在从页眉底部到页脚顶部的空间内垂直居中。如果调整了窗口高度,则正文内容应保持在这两点之间的中心。另请注意,该网站将响应,但仅从 960 像素到大约 1600 像素(因此它的最小宽度为 960 像素)。
关于如何实现这一点,我唯一的想法是让包含正文内容的 div 以某种方式自动扩展为始终是从标题底部到浏览器窗口底部的全高(然后在底部占页脚),然后在此包含 div 上使用 display: table,并在子 div 上使用 display: table-cell 和 vertical-align: middle。
还有其他方法(最好是纯 CSS)我可以做到这一点吗?如果没有,我怎样才能让正文内容的包含 div 扩展为始终是从标题底部到浏览器窗口底部的全高?
【问题讨论】:
-
您提出的解决方案可行,CSS 表格单元格是个好主意。如果窗口高度变得足够小并且内容开始溢出会发生什么,您需要在内容块上添加一个滚动条。页眉是否与页脚一样固定?
-
是的,这绝对是需要的。不确定我是否可以仅使用 CSS 或是否需要一些 JavaScript 来实现这一点。我也不确定如何让包含正文内容的 div 扩展到从标题到浏览器窗口底部的完整高度,以便使用
display: table和display: table-cell。 -
你能说一下header,固定高度,固定位置吗?
-
为 OP 添加了一些额外的细节。标题只是静态定位。如果需要固定高度才能使特定解决方案起作用,这可能是可能的,但如果不必固定高度会更好。
-
这被称为“粘性页脚”(这样你就知道要谷歌了)
标签: css