Эффект плавного появления страницы хорошо подходит для рекламных сайтов и лэндингов. Сделать его можно с помощью CSS свойств opacity
, transition
и JS.
В CSS, класс .body_hide
изначально скрывает содержимое, класс .body_visible
отображает его c плавным эффектом transition opacity.
<body>
добавляется класс body_hide
: <!DOCTYPE html>
<html lang="ru">
<head>
...
</head>
<body class="body_hide">
...
</body>
</html>
В JS, с задержкой 200мс к <body>
добавляется класс body_visible
.
jQuery
Чистый JS
В браузерах с отключенным JS будет выводится пустая страница, чтобы этого избежать рекомендуется добавить в <head>
страницы блок <noscript>
:
Реализовать можно на сессиях PHP:
<?php
session_start();
if (isset($_SESSION['show_body'])) {
$body_class = '';
} else {
$_SESSION['show_body'] = true;
$body_class = 'body_hide';
}
?><!DOCTYPE html>
<html lang="ru">
<head>
...
</head>
<body class="<?php echo $body_class; ?>">
...
</body>
</html>
Или Cookies: