Мой сайт занимает так много процессора на моем компьютере
я использую в этом проекте django с чистым css и js и кажется, что мой сайт потребляет так много процессора также я использую градиентную анимацию с помощью css
body {
background: linear-gradient(to right, rgb(247, 85, 202), rgb(18, 103, 248));
background-size: 400% 400%;
animation: gradient 15s ease infinite;
}.nav-link ,.navbar-brand ,.nav-link:hover ,.navbar-brand:hover {
background: linear-gradient(to right, rgb(247, 85, 202), rgb(18, 103, 248));
-webkit-background-clip: text;
background-size: 400% 400%;
color: transparent;
animation: gradient 15s ease infinite;
}
@keyframes gradient {
0% {
background-position: 0% 50%;
}
50% {
background-position: 100% 50%;
}
100% {
background-position: 0% 50%;
}
}
дополнительно я использую слушатель событий для всего документа с помощью Javascript
document.querySelectorAll('.edit').forEach((button) => {
.
.
.
})
document.querySelectorAll('.filter-green').forEach(like => {...})
Ваша проблема заключается в использовании анимации на градиентном фоне - если только на элементе body, то на моей системе (Windows 10/Edge достаточно мощный ноутбук) я не вижу такого большого использования CPU, но использование GPU очень высокое (около 48%).
Если я затем ввожу анимацию на двух других элементах, которые имеют анимированные фоны, GPU увеличивается до 60%-75%.
Начните с того, что решите, что действительно должно иметь анимированный фон. Я подозреваю, что это тело, которое вы хотите показать, и убрать анимацию с других элементов.
У вас по-прежнему высокая загрузка CPU или GPU, и ваши пользователи не поблагодарят вас за такое поведение, разряжающее батарею.
Я бы посоветовал вам либо отказаться от идеи анимировать этот тип градиента, либо, по крайней мере, предоставить пользователям возможность включать и выключать его. В любом случае, обратите внимание на то, просили ли они сделать сайт с низким уровнем движения - некоторые люди плохо реагируют на движение на экране.
См. MDN для получения информации о доступности и анимации.
