HTML / CSS-CSS过滤器会创建许多渲染层,从而减慢网页渲染速度吗?

时间:2018-07-02 09:45:40

标签: html css google-chrome web web-performance

我有一个使用SlickGrid构建的数据网格。我使用了 css亮度滤镜使奇数行比偶数行更暗,并且使用了 css背景混合使选定的行具有蓝色,同时仍保持奇数/偶数行颜色交替。

.slick-row.odd {
  filter: brightness(.96);
}

.slick-row.selected {
  background-image: linear-gradient(0deg, #DFE8F6, #DFE8F6);
  background-blend-mode: multiply;
}

为了给出一些想法,网格看起来像这样:

enter image description here 我最近意识到的是,网格在垂直滚动时开始闪烁。通常,新行的输出速度比以前慢一些,偶数行的速度比奇数行的速度快。在快速滚动过程中,您会感觉到所有奇数行(应该是更暗的)都是空的,而偶数行都有数据。

在检查一些我发现麻烦渲染性能的教程之后,我已经检查了chrome dev-tools。我确实注意到亮度过滤器会创建很多层边界。我认为这使每一行成为一个单独的层。

关闭样式确实可以加快渲染速度,我的问题是它是否由于CSS过滤器和图层而变慢,还是因为我要应用许多样式?

0 个答案:

没有答案