Как сделать видеофон для сайта
Приветствую всех посетителей сайта! Сегодня мы будем рассматривать установку видео в качестве бэкграунда для сайта. С появлением скоростного Интернета и мониторов большого разрешения у вебмастеров появилось гораздо больше возможностей для модернизации новых проектов.
Помимо больших полноэкранных слайдеров и картинок, все чаще в качестве фона можно встретить полноэкранное видео. Для наглядного примера я приведу десяток подобных сайтов чуть ниже. А пока давайте выясним, как можно реализовать такой эффект на своем сайте.
Установить видеофон можно разными методами, например, с помощью специальных плагинов и скриптов, либо как flash-video, либо используя возможности HTML5. Последний метод более востребован в среде веб-мастеров, так как при правильной оптимизации видеоролика он особо не тормозит загрузку сайта и прост в применении.
Именно с помощью HTML5 мы сегодня и будем устанавливать видеофон на свой сайт и поможет в этом нам специальный тег <video>. Перед тем, как приступить к установке, нужно подготовить исходное видео в основных форматах.
Не все браузеры воспроизводят популярный видео-формат mp4, поэтому для подстраховки будем использовать еще форматы webm и ogg. Имея выбор, браузер клиента автоматически определит поддерживаемый формат из предложенных и беспроблемно воспроизведет нужное видео.
Конвертировать видео в нужные форматы можно с помощью онлайн-конвертеров, например, http://video.online-convert.com/ru. Подготовив видео в трех форматах, можно приступать к процессу их установки на сайт в качестве фона.
Но сначала для вдохновения предлагаю взглянуть на ресурсы, которые используют полноэкранные видеофоны. Вот десяток сайтов с установленными видеороликами в качестве бэкграунда:
1. http://eagleclean.co.uk
2. http://paypal.com
3. https://y.co/
4. Lifeofpimovie.com
5. Llr-hamburg.de
6. Isurfbecause.com
7. http://marisapassos.com/
8. http://iuqo.com/
9. http://blacknegative.com/#!/luminarc/
10. http://www.workingelement.com/
Итак, как всегда, начнем со структуры.
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>HTML5 видео в качестве заднего фона</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<video autoplay loop muted class="bgvideo" id="bgvideo">
<source src="video.mp4" type="video/mp4"></source>
</video>
</body>
</html>
Думаю, тут все ясно. Запускаем видео сразу при загрузке страницы, зацикливаем его, чтобы оно никогда не останавливалось, и отключаем звук.
Перейдем к стилям
body {
background: url('video.png');
background-size: cover;
}
.bgvideo {
position: fixed;
right: 0;
bottom: 0;
min-width: 100%;
min-height: 100%;
width: auto;
height: auto;
z-index: -9999;
}
Тут тоже нет ничего сверхестественного. Для видео мы задаем ширину и высоту по 100%, делаем выравнивание видео по правому нижнему краю и задаем свойство z-index отрицательным, чтобы текст и другие элементы могли отображаться поверх видео.
Если, вдруг, видео не будет отображаться, то мы отобразим картинку, которую мы задали для тега body.
Теперь я расскажу про фильтры и скорость воспроизведения видео в HTML5.
Начнем с фильтров. К примеру, вы можете добавить оттенок серого к вашему видео
.bgvideo {
// код
filter: grayscale(100%);
}
И, также, вы можете изменить силу его эффекта, поставив вместо 100%, к примеру, 17%
Или вы можете добавить эффект "сепия" к вашему видео таким образом:
.bgvideo {
// код
filter: sepia(100%);
}
Теперь поговорим про воспроизведение видео. Откройте консоль в браузере и пропишите следующее:
var video = document.getElementById('bgvideo');
Таким образом мы получим объект, у которого есть несколько методов и свойство. Поговорим про некоторые из них
video.play();
video.pause();
video.playbackRate = 5;
Думаю, тут все понятно. Метод play запускает воспроизведение видео, метод pause, наоборот, приостанавливает воспроизведение видео, а свойство playbackRate позволяет указать, с какой скоростью должно воспроизводиться видео: 1 - оригинал, > 0 - быстрее, < 0 - медленнее. В нашем случае видео будет идти в 5 раз быстрее, чем в оригинале.