在一个应用程序中,我想要一个固定的页脚(一个div停留在所有内容的前面,而不是页面底部的粘性页脚),上面有一个可滚动的div。使用以下代码,一切正常:
<style>
.page{
position:absolute;
top: 0;
bottom: 0px;
overflow:auto;
}
.footer{
position:fixed;
bottom: 0;
height: 40px;
background-color:blue;
width:100%;
}
</style>
<div class="page"></div>
<div class="footer"></div>
除了使用ui-select创建的下拉列表将显示页脚后面的下拉菜单...如果在下拉列表下方没有空格,则ui-select组件可以自动向上定位drowpdown。该检查适用于: document.documentElement.clientHeight (https://developer.mozilla.org/en-US/docs/Web/API/Element/clientHeight)
在搜索时,我来到了这些网站。
clientHeight/clientWidth returning different values on different browsers https://en.wikipedia.org/wiki/Internet_Explorer_box_model_bug
关于Internet Explorer模型错误(我不确定高度是否也受到影响),边框包含在clientHeight中,但边距不包含在内。这就是我添加保证金底部的原因:40px;到html标签...
html{
margin-bottom:40px;
}
...从clientHeight减去40。除了Internet Explorer(主要目标浏览器:()
之外,它工作正常我创建了一个测试来显示不同的行为(我还读到只在IE的resize事件中计算出的值是正确的,所以我使用了一个resize listener来打印clientHeght ....你必须将代码复制/粘贴到本地html文件以进行测试:
https://jsfiddle.net/93rvoftk/
如您所见,clientHeight未正确计算。
所以我的问题是:
提前非常感谢,我整天搜索了一个解决方案......
亲切的问候
MOE