繁体   English   中英

更改position:fixed为position:relative时的Safari渲染问题

[英]Safari rendering issue when changing position:fixed to position:relative

我正在开发一个jQuery插件,只是为了好玩,它会在您向下滚动页面时显示“堆栈”中的元素。

Github仓库在这里-https: //github.com/JayBizzle/Reveal

演示在这里-http://jaybizzle.github.io/Reveal/

一切在Chrome中都能正常运行,但是在Safari中进行测试时,我看到了一些奇怪的渲染问题。

如果您在Safari中观看演示并快速向下滚动,则会发现彩色DIV之间出现白色间隙。

甚至更陌生的是,如果您随后检查位置不正确的DIV之一,则检查器会在正确位置突出显示DIV。 另外,如果您在检查器中时更改了元素CSS属性之一(例如添加边框),则页面将重新绘制,并且该元素将显示在正确的位置。

任何人都知道这是一个Safari错误还是我可以用一些鲜为人知的CSS克服的想法?

我有一个类似的问题。 我的解决方法是先将位置设为静态,然后再将位置设为相对,但要稍加延迟。

    $(elem).css('position', 'static');
    setTimeout(function() {
      $(elem).css('position', 'relative');
    }, 1);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM