Если вы выбираете метод, в котором содержимое скрыто до тех пор, пока не будет загружена вся страница, сначала не скрывайте его в CSS, а затем не скрывайте в JavaScript. Если вы сделаете это, любой, у кого JavaScript отключен или недоступен, вообще не получит никакой страницы. Вместо этого выполните скрытие и показ из сценария.
<body>
<script type="text/javascript">
document.body.style.visibility= 'hidden';
window.onload= function() { document.body.style.visibility= 'visible'; };
</script>
Также обратите внимание, что термин «предзагрузчик» не совсем подходит для того, что вы здесь делаете. «Pre» означает, что вы повышаете производительность, извлекая и кэшируя страницу, чтобы она была готова к тому времени, когда это необходимо.
Но на самом деле все наоборот: он снижает производительность , ожидая, пока пользователь ничего не показывает во время загрузки страницы, когда доступно частичное содержимое. Отказ от прогрессивного рендеринга делает просмотр медленнее, а не быстрее. Обычно это не то, что нужно, и, за исключением нескольких нишевых случаев, лучше всего использовать обычный браузер с прогрессивным рендерингом. Вот как работает интернет; люди уже привыкли к этому.
(То есть, за исключением глупых типов менеджмента, которые на самом деле не используют или не понимают Интернет, но требуют, чтобы сайт их компании появился сразу.)