Ответ
Сложные CSS-свойства, требующие пересчёта layout или repaint, могут замедлять рендеринг:
box-shadowиfilter(особенно blur) - вызывают repaint и требуют больших вычисленийborder-radiusв сочетании с другими эффектами- Анимации через
transformлегче, чем черезwidth/height/top/left position: fixed- вызывает постоянные перерасчёты при скроллеwill-change- может помочь, но при неправильном использовании вредит
Пример плохой практики:
.element {
width: 100%;
transition: width 0.3s; /* Вызовет reflow */
}
/* Лучше так: */
.element {
transform: scaleX(1);
transition: transform 0.3s; /* Будет использовать композицию */
}