The image just does not have time to load. You can set the background color, such as blue, so that it is not so noticeable.
body{ background-color: blue; }
Or make a preloader
window.onload = function(){ document.getElementById('preloader').style.display = "none"; };
#preloader{ position: fixed; width: 100%; height: 100%; background: blue; display: flex; justify-content: center; align-items: center; }
<html> <head> <!-- Здесь должен быть стиль прелоадора ВНИМАНИЕ! Отдельно от основного стиля !--> </head> <body> <div id="preloader"><p>Загрузка...</p></div> <!-- После прелоадора идёт всё содержимое сайта И в самом конце подключаются стили и скрипты Так же js код для закрытия прелоадера--> </body> </html>
Since the web page is loaded and processed sequentially from top to bottom, the preloader placed at the very top will be loaded first and will close the loading content. After a full page load, it will be closed by js code at the very bottom of the page.
Hope helped.