我在Safari中注意到,固定封面背景不合理。使用git rebase -i origin/<remote-branch> <local-branch>
时,背景图像应该在其容器的左下角对齐,因此,例如,给定徽标的图像应始终存在,因为它位于所述角落。
请参阅下面的示例,在Firefox中,图像左下方的徽标出现,而在Safari(版本8.0.3)上则没有。
background-position: left bottom;
http://jsfiddle.net/louiswalch/b6hszasz/1/
行为:Firefox Left / Safari Right
答案 0 :(得分:1)
从截图中看,问题似乎是iframe
滚动问题。我不仅可以在Safari
上重现您的问题,还可以在Firefox
和Chrome
上重现您的问题。
在jsfiddle
的嵌入视图中,“结果”iframe位于带有padding-top
的div中。但iframe
高度是在没有padding
的情况下计算出来的,因此框架中的scroll
变为可能。您的fixed background
停留在bottom
window
,但此窗口会滚动,因此在某些时候它会低于浏览器的底部。您可以通过打开链接进行测试:
http://jsfiddle.net/louiswalch/b6hszasz/1/embedded/result/
然后打开控制台并运行此行:
document.getElementById('result').style.padding = '0px'
您应该看到background
行为正常。由于jsfiddle
中的iframe是沙盒,因此不确定iframe
是否可以通过此方法进行更正。
请注意,这是基于您的屏幕截图,您的小提琴和浏览器上的行为,可能还有其他问题。但在我看来,我可以很容易地重现这个问题。
编辑:
查看您的实际网站,很明显还有另一个问题,这显然看起来像一个错误。似乎发生的事情是Safari将viewport
视为窗口的outerHeight
而不是innerHeight
。我猜这是因为工具栏/标题中的透明效果。在任何情况下,您都可以在控制台中清楚地看到这一点。这个根本不会移动图片,这表明100% position y
是根据outerHeight
而不是innerHeight
制作的:
$('.image').css("background-position", "left -" + ($('.image').width() - window.outerHeight) + "px")
但是当使用它时,它会正确地移动它:
$('.image').css("background-position", "left -" + ($('.image').width() - window.innerHeight) + "px")
所以我想一个解决方案是检测Safari并以这种方式动态定义背景位置。但是你也必须重新定义调整大小。