【发布时间】:2015-06-07 17:16:50
【问题描述】:
我正在尝试实现经典的粘性页脚。我正在使用 angular 1.4、ngRoute、ngMaterial 等。 我已经尝试过 css 解决方案(设置 wrapper、footer、html、body 100%)以及计算元素高度的 jQuery 函数,但没有什么能完美运行。注意这里我不想给页脚设置一定的高度,然后计算剩余空间。我希望它能够响应我的内容。
1)我们大多数解决方案,当主要内容区域小于高度时,我可以将其粘贴到底部。在这种情况下,主要内容和页脚(正文)之间有一个空白区域。我可以将 body 的背景颜色设置为 ng-view 的颜色,使其看起来相同。我不确定这是否正确。
2) 当主要内容变大时,页脚会丢失(在主要内容后面而不是向下滚动)。这与角度指令或路线有什么关系,还是我错过了其他东西? 你可以查看我的plunkr 来查看。单击“主页”以外的任何选项卡,您会看到一个底部带有页脚的空白页面。单击“主页”,页脚将丢失。它实际上就在那里,在内容的背后。 p.s.我不想把我所有的代码都放在这里,它很大。如果您有任何问题,请查看 plunkr 或问我。
<body class="Site" ng-app="personalWebsite" ng-controller="mainController as main" style="display: flex; flex-flow: column nowrap;">
<div class="Site-content">
<tsafou-nav></tsafou-nav>
<md-content layout-padding ng-view></md-content>
</div>
<footer>
<tsafou-footer></tsafou-footer>
</footer>
</body>
*页脚
<div class="footer">
<p>Design by<span>WOW</span></p>
</div>
我刚刚意识到以下代码适用于 Firefox,但不适用于 chrome!有人可以确认这一点并提出修复建议吗?
<body class="Site" ng-app="personalWebsite" style="display: flex; flex-flow: column nowrap;">
<div class="Site-content">
<tsafou-nav></tsafou-nav>
<md-content layout-padding="" ng-view=""></md-content>
</div>
<footer>
<tsafou-footer></tsafou-footer>
</footer>
【问题讨论】:
标签: html css angularjs angular-routing angular-material