我意识到这是一个老问题,我不确定您是否仍然对此感到困惑,但为了将来参考,这里是一个非常简单的 css 解决方案。
按照 Foundation 网站上的 offcanvas 示例,我们可以将类 'position-left' 替换为 'position-top' 并添加 'data-position="top"',如下所示。
<div class="off-canvas position-top" id="offCanvas" data-off-canvas data-position="top">
在您的 CSS 中添加“is-open-top”类,它将垂直打开菜单。
.is-open-top
{
-webkit-transform: translateY(250px);
-ms-transform: translateY(250px);
transform: translateY(250px);
}
那么我们需要用下面的类重新定位菜单项
.off-canvas.position-top
{
left: 0px;
top: -250px;
width: 100%;
}
最后移除滚动条
.off-canvas-wrapper
{
overflow: hidden;
}
工作示例http://codepen.io/rawiki/pen/eZamZL
随着菜单打开,它会将您的正文内容向下推。请注意,它不会在您添加菜单项时自动调整大小,因此您需要增加或减少“translateY”距离以及将“top”设置为相同值的负数。