我正在开发一个项目,并且已经在Chrome和Firefox上运行了样式。当我使用Apple + R刷新或点击浏览器上的刷新按钮时,Safari上的样式变得混乱(所有内容,但不是背景,向下移动几百个像素)。但是当我点击网址并按回车键进行刷新时,样式就很完美了。
为什么会这样?如何通过点击URL上的输入使其他Apple + R和刷新按钮与刷新相同?
我的Safari浏览器是7.0.3。我提出我的代码会非常复杂,而且我不确定如何重新创建这个问题。
编辑:当我刷新“糟糕”的方式时,在一切都向下移动之前,样式处于正确的位置一瞬间。
EDIT2:我提供了一个黑客解决方案。它在下面的答案列表中。我拒绝相信这是最好的答案,绝对不是我推荐的。我希望其他人可能有更好的答案,但是如果你被困住了,你可能想看看它。
答案 0 :(得分:0)
在JS控制台中进行一些测试之后,我看到window.location.reload();
会刷新页面" bad"方式location = location;
将刷新页面" good"方式。
所以我在使用jQuery加载页面后添加了几个hacky检查。如果我的内容div(受影响的那个)没有常规高度且浏览器是Safari,那么我打电话给location = location;
。所有3个浏览器"外观"工作得很完美,现在已经足够好了。我可能想退一步,重新规划这个页面。