Video

Start playing videos as they are shown or enter the viewport.

The Video component offers two advanced functions for videos. First, it allows you to pause a video whenever it’s hidden with CSS and resume playing once it becomes visible again. In addition, the video can pause when it’s outside the viewport and start playing when entering it.

Secondly, it allows you to mute YouTube and Vimeo videos, which is often needed if they are used as the background of a section.

For example, the Slideshow, Lightbox and Cover components inherit and make use of both functions.

Usage

To apply this component, add the uk-video attribute to a <video> element. The video will be paused whenever it’s hidden with CSS and resume once it becomes visible again.

<video src="" width="" height="" uk-video></video>
Copy to clipboard
  • <button
      class="uk-button uk-button-default uk-margin"
      type="button"
      uk-toggle="target: +"
    >
      Toggle HTML5 Video
    </button>
    
    <video
      src="https://yootheme.com/site/images/media/yootheme-pro.mp4"
      width="1920"
      height="1080"
      controls
      playsinline
      hidden
      uk-video
    ></video>

Autoplay

There are two autoplay options to play the video. Just add the autoplay option to the uk-video attribute and apply one of these values.

ValuesDescription
inviewPlay video when it enters the viewport and pause it again when it leaves the viewport.
hoverPlay video when the mouse hovers the video and pause it again when the mouse leaves the hover.
<video src="" width="" height="" uk-video="autoplay: inview"></video>
<video src="" width="" height="" uk-video="autoplay: hover"></video>
Copy to clipboard
  • <div class="uk-child-width-1-2@m" uk-grid>
      <div>
        <video
          src="https://yootheme.com/site/images/media/yootheme-pro.mp4"
          width="1800"
          height="1200"
          loop
          muted
          playsinline
          uk-video="autoplay: inview"
        ></video>
      </div>
      <div>
        <video
          src="https://yootheme.com/site/images/media/yootheme-pro.mp4"
          width="1800"
          height="1200"
          loop
          muted
          playsinline
          uk-video="autoplay: hover"
        ></video>
      </div>
    </div>

Automute YouTube or Vimeo

To mute YouTube or Vimeo videos by default, add the uk-video="automute: true" attribute to the <iframe> element.

<iframe src="" width="" height="" uk-video="automute: true"></iframe>
Copy to clipboard
  • <button
      class="uk-button uk-button-default uk-margin-bottom"
      type="button"
      uk-toggle="target: +"
    >
      Toggle YouTube Video
    </button>
    
    <iframe
      src="https://www.youtube-nocookie.com/embed/c2pz2mlSfXA?autoplay=0&amp;showinfo=0&amp;rel=0&amp;modestbranding=1&amp;playsinline=1"
      width="1920"
      height="1080"
      allowfullscreen
      uk-responsive
      uk-video="automute: true"
    ></iframe>

Component options

Any of these options can be applied to the component attribute. Separate multiple options with a semicolon. Learn more

OptionValueDefaultDescription
autoplayBoolean, StringtrueThe video automatically plays/pauses as it’s visible/hidden on the page. Additionally, the video can play when its in the viewport or hovered with the mouse (inview, hover).
automuteBooleanfalseAutomatically mute YouTube or Vimeo videos.

autoplay is the Primary option, and its key may be omitted if it’s the only option in the attribute value.

JavaScript

Learn more about JavaScript components.

Initialization

UIkit.video(element, options);