我的任务是在预先存在的文档架构和自定义XSL库的HTML输出中添加“粘性页脚”。我开始时用一种非常简单的方法将整个身体内容包裹在一个包含display:flex;
和flex-direction: column;
的div中,然后将粘性页脚放在margin: auto 0 0 0;
的最终子div中
这就是我需要做的就是在Firefox,Chrome和Edge中获得我想要的布局。但IE11顽固地拒绝打球,虽然我已经尝试了几乎所有我能想到的其他属性的合理排列,以及除了页脚以外的所有其他包装器。
可以在this JSFiddle看到基本示例。
如果打开此选项并增大或减小浏览器视图区域的宽度,您将看到大多数浏览器会调整标题和段落的位置。然而,在IE11中,每个元素的起始垂直位移都是固定的,因此视图变窄项目会相互覆盖,并且随着视图变宽,它们会再次分开。原始位移似乎是在假定浏览器视图最大化的情况下计算的,而不是基于实际的初始大小,尽管我认为这是导致调整大小行为的任何问题的工件。
如果我有任何选择,我想避免一个涉及必须为flexbox中的每个子元素添加属性的解决方法; html是由较低级别的复杂XSL生成的,我宁可一个人留下。我可以调整flexbody并添加一个flexbody-but-not-footer包装器,我希望有一个可以在这些约束条件下工作的解决方案。
请帮忙!