аватар Автор: Сергей Касаткин | 15 мая 2017 18:13

Статьи / CSS /

Как сделать видео фоном блока на CSS?


Современные сайты требуют современный дизайн-решений. В данной статье я опишу то, как можно на сайт добавить видеофон в блок div на html и css. На многих сайтах подобные решения уже используются. В некоторых случаях только добавляя затемнение или размытие.

Чаще всего видеофон используется на landing page, для сайта с товаром, событием.

Преимущества и недостатки видео в фоне блока сайта


Плюсы: современное решение, динамический сценарий, красивое оформление
Минусы: увеличение времени загрузки страницы, проблеме с просмотром с мобильных устройств


Видео в блоке div на html и css


Первая часть кода - стили.

* { box-sizing: border-box; }
.video-background {
  background: #000;
  position: fixed;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: -99;
}
.video-foreground,
.video-background iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
#vidtop-content {
    top: 0;
    color: #fff;
}
.vid-info { position: absolute; top: 0; right: 0; width: 33%; background: rgba(0,0,0,0.3); color: #fff; padding: 1rem; font-family: Avenir, Helvetica, sans-serif; }
.vid-info h1 { font-size: 2rem; font-weight: 700; margin-top: 0; line-height: 1.2; }
.vid-info a { display: block; color: #fff; text-decoration: none; background: rgba(0,0,0,0.5); transition: .6s background; border-bottom: none; margin: 1rem auto; text-align: center; }
@media (min-aspect-ratio: 16/9) {
  .video-foreground { height: 300%; top: -100%; }
}
@media (max-aspect-ratio: 16/9) {
  .video-foreground { width: 300%; left: -100%; }
}
@media all and (max-width: 600px) {
.vid-info { width: 50%; padding: .5rem; }
.vid-info h1 { margin-bottom: .2rem; }
}
@media all and (max-width: 500px) {
.vid-info .acronym { display: none; }
}

Вторая часть кода - html.

<div class="video-background">
    <div class="video-foreground">
      <iframe src="https://www.youtube.com/embed/W0LHTWG-UmQ?controls=0&showinfo=0&rel=0&autoplay=1&loop=1&playlist=W0LHTWG-UmQ" frameborder="0" allowfullscreen></iframe>
    </div>
  </div>

<div id="vidtop-content">
<div class="vid-info">
      <h1>Крутое видео с МКС</h1>
      <p>Масса Солнца составляет 99.86% от массы всей Солнечной системы, оставшиеся 0.14% приходятся на планеты и астероиды.</p>
          <p>Самым крупным упавшим на Землю метеоритом считается 2,7 метровый «Гоба» (Hoba), обнаруженный в Намибии. Метеорит весит 60 тонн и на 86% состоит из железа, что делает его самым крупным куском железа природного происхождения на Земле.</p>
          <p>Вес нашей планеты – это величина непостоянная. Ученые выяснили, что каждый год Земля поправляется на ~40 160 тонн и сбрасывает ~96 600 тонн, теряя таким образом 56 440 тонн.</p>
     <a href="#">Текст ссылки</a>
  </div>
</div>

На некоторых мобильных устройствах видео по умолчанию не проигрывается.
В этом случае рекомендуется средствами php определить мобильное это устройство или нет и добавить фрагмент, в котором фоном становится изображение.

Проверить действие кода можно проверить.

Демонстрация Скачать исходники


Успехов в вёрстке! Если будут вопросы, пишите!
 



Похожие статьи


Комментарии к статье (vk.com)