Смена дизайна в зависимости от времени суток


Многим из Вас встречались сайты, где днём и ночью разный дизайн. Например, днём он светлый, а ночью, чтобы не слепить слишком сильно, он, наоборот, делается более тёмным. В этой статье я расскажу, как делается такая смена дизайна в зависимости от времени суток. Первым делом, Вам необходимо сделать 2 CSS-файла: дневной вариант и ночной. Пусть это будут файлы day.css и night.css соответственно. Вычисление времени суток и подключение соответствующего файла стилей можно делать как на JavaScript, так и на PHP. Но во втором случае нам будет сложно выяснить часовой пояс посетителя, а, как следствие, его время. У нас на сервере может быть день, а у посетителя глубокая ночь, а ему будет выводиться дневной дизайн, что весьма странно. Тогда как в JavaScript в этом плане проблем нет. Поэтому мы с Вами реализуем скрипт смены дизайна через JavaScript, чтобы это работало максимально корректно. Итак, полный код всего этого приведён ниже: <link id="style" rel="stylesheet" type="text/css" href="css/day.css" /> <script type="text/javascript"> var date = new Date(); // Получаем текущие дату и время var h = date.getHours(); // Получаем текущий час if (h < 8 || h > 21) document.getElementById("style").href = "css/night.css"; // Если сейчас ночь, то меняем файл стилей </script> Код очень простой. По умолчанию подключается дневной файл стилей. И он, кстати, останется у тех, у кого отключён JavaScript. Для тех, у кого он включён, и при этом сейчас ночь, он поменяется на ночной файл стилей. Как видите, скрипт очень простой. Если хотите потренироваться, то можете улучшить скрипт смены дизайна сайта в зависимости от времени суток, добавив учёт текущего дня и месяца. Очевидно, что 20-го декабря в 18:00 уже фактически ночь на улице, тогда как 20-го июня и в 21:00 ещё светло. Поэтому в качестве тренировки можете придумать алгоритм, который будет это учитывать.