Выбор ответа Middle Анимации обновлено
Чем опасен will-change на всех элементах
Вопрос
Разработчик добавил в глобальные стили * { will-change: transform; }, чтобы «всё летало». Что не так?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Браузер может создать слой на каждый элемент, память растёт и всё тормозит. will-change подсказывает браузеру подготовить элемент к изменению, обычно выносом в отдельный композитный слой.
Варианты ответа
- Ничего: так браузер заранее оптимизирует все анимации на странице
will-changeработает только наposition: absolute, остальное проигнорирует- Свойство устарело и не поддерживается в Safari, там всё будет дёргаться
- Браузер может создать слой на каждый элемент, память растёт и всё тормозитправильный ответ
Разбор
will-change подсказывает браузеру подготовить элемент к изменению, обычно выносом в отдельный композитный слой. Слой стоит памяти GPU, и тысячи слоёв дают обратный эффект. Ставят его точечно, перед анимацией, и снимают после. Ограничения на position у свойства нет, и оно поддерживается всеми основными браузерами.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.