我试图弄清楚为什么滚动到第三个元素div.servicespost时会重新渲染。

请参见here。当您滚动浏览时,“最新动态”下的第三篇文章会重新呈现在新行上。我无法提供任何其他信息。有人看过吗?

检查员没有显示异常,也没有显示任何错误。

最佳答案

有一些导致问题的因素:

1)添加.onScreen类时,有一些正在被删除的边距。如果同时添加和删除了所有类,则不一定是问题,但这会导致第二个问题。

2)列的高度不相等,这意味着.onScreen类在不同的时间被删除。

最终结果是第三列(.postwrapper-3)的.onScreen类仍然处于活动状态,而其他两列都不处于活动状态。由于它使用负边距来保持正确对齐,并且.onScreen类去除了该负边距,因此将其移至新行。

简单修复,从.onScreen类中删除保证金清算:

#services .onScreen {
  margin: 0; //remove this
  opacity: 1;
}

关于css - CSS错误导致滚动时重新渲染元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30472865/

10-11 12:50