Skip to content

ReferenceSkins

VideoSkin

The video preset's default skin with the modern, frosted look

The default skin of the video preset: the control layout for on-demand video with the modern, frosted look. MinimalVideoSkin is the same preset’s other variant. See Skins for how packaged skins work and Presets for what the video preset ships.

Import

import { VideoSkin } from '@videojs/react/video';
import '@videojs/react/video/skin.css';

Usage

The skin goes between the player and the media element. It renders its controls around the media.

<VideoPlayer>
  <VideoSkin>
    <Video src="video.mp4" />
  </VideoSkin>
</VideoPlayer>

Poster

The skin renders a poster image before playback starts. Pass renderPoster to replace it with your own component.

See Add a poster and loading placeholder for complete examples.

Thumbnail

The skin renders a storyboard preview image while scrubbing the time slider. Pass renderThumbnail to replace it with your own image, for example to set crossOrigin, loading, or fetchPriority.

See Show timeline thumbnail previews for complete examples.

Styling

Packaged skins style themselves and expose a small set of public CSS custom properties. Everything else inside the skin is private and may change between releases. Customize skins documents the properties. For deeper changes, the Video.js registry provides the skin files.

Own the UI

Packaged skins keep their controls and layout inside Video.js. When you need to add, remove, rearrange, or deeply restyle controls, use Shadcn to add the skin source to your project. Its components, layout, styles, and interactions become local files you can change.