HTML Academy · Aula

O elemento video e a proporção da tela

Incorpore vídeos e mantenha a proporção correta da tela.

Aula 2 de 413 etapas

O elemento video e a proporção da tela é uma aula grátis de HTML Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de HTML Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de HTML Academy inclui 4 aulas no total.

O elemento video

O elemento <video> incorpora video nativamente:

<video controls width="800" height="450" src="tutorial.mp4">
  Your browser does not support video.
</video>

Atributos essenciais

Atributos importantes de video:

<video
  src="demo.mp4"
  controls           <!-- show player UI -->
  width="1280"       <!-- intrinsic width -->
  height="720"       <!-- intrinsic height -->
  poster="preview.jpg" <!-- thumbnail before play -->
  preload="metadata"   <!-- preload only metadata -->
>
  Your browser does not support video.
</video>

O atributo de miniatura

O atributo poster define uma miniatura exibida antes da reprodução do video:

<video controls poster="/thumbnails/episode-42.jpg" width="800" height="450">
  <source src="episode-42.mp4" type="video/mp4">
</video>
<!-- Without poster: browser shows a black frame
     or the first frame of the video (browser-dependent) -->

Largura e altura para a proporção

Sempre especifique a largura e a altura para evitar deslocamentos no layout:

<video controls width="1280" height="720" src="video.mp4"></video>
<!-- Browser reserves correct space before video loads -->
<!-- Prevents CLS (Cumulative Layout Shift) -->
<!-- Make responsive with CSS:
  video { width: 100%; height: auto; }
-->

CSS responsivo para video

Deixe o video responsivo com CSS:

video {
  width: 100%;
  height: auto;
  max-width: 1280px;
  display: block;
  margin: 0 auto;
}

/* Aspect ratio box: */
.video-wrapper {
  position: relative;
  padding-top: 56.25%;  /* 16:9 aspect ratio: 9/16 = 0.5625 */
}
.video-wrapper video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

Propriedade CSS aspect-ratio

Abordagem moderna usando aspect-ratio do CSS:

video {
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
}

/* Other common ratios: */
/* 4:3 → aspect-ratio: 4 / 3 */
/* 21:9 → aspect-ratio: 21 / 9 */
/* 1:1 → aspect-ratio: 1 */

Controles de reprodução de video via JS

Controle de video com JavaScript:

const video = document.getElementById('my-video');

video.play();
video.pause();
video.currentTime = 60;  // jump to 1 minute
video.playbackRate = 1.5;  // 1.5x speed
video.volume = 0.7;
video.muted = true;
video.requestFullscreen();

console.log(video.duration);    // total length
console.log(video.paused);      // is it paused?

Eventos de video

Ouça os eventos do video:

video.addEventListener('play', () => updatePlayButton());
video.addEventListener('pause', () => updatePlayButton());
video.addEventListener('ended', () => showNextVideo());
video.addEventListener('timeupdate', () => updateProgressBar());
video.addEventListener('loadedmetadata', () => {
  console.log('Duration:', video.duration);
  console.log('Dimensions:', video.videoWidth, 'x', video.videoHeight);
});

API de tela cheia

Entre e saia do modo de tela cheia programaticamente:

const btn = document.getElementById('fullscreen-btn');
const video = document.getElementById('player');

btn.addEventListener('click', () => {
  if (!document.fullscreenElement) {
    video.requestFullscreen();
  } else {
    document.exitFullscreen();
  }
});

document.addEventListener('fullscreenchange', () => {
  btn.textContent = document.fullscreenElement ? 'Exit Fullscreen' : 'Fullscreen';
});

Política de reprodução automática de video

Regras do navegador para a reprodução automática de video:

  • Video sem som → pode ser reproduzido automaticamente em todos os navegadores modernos
  • Video com som → bloqueado, a menos que o usuário tenha interagido com a página
  • Índice de interação com mídia do Google → visitantes frequentes podem ter a reprodução automática permitida
  • Sempre forneça um botão play como alternativa

Acessibilidade para video

Requisitos de acessibilidade para video:

  • Forneça legendas para todos os diálogos e sons importantes
  • Forneça uma transcrição para pessoas surdas ou com deficiência auditiva
  • Forneça audiodescrições para pessoas cegas (descreva as informações exclusivamente visuais)
  • Garanta que os controles do teclado funcionem (os controles nativos funcionam)

Verificação rápida

Qual atributo de video exibe uma imagem estática antes da reprodução do video?

Recapitulação: elemento video

Elementos essenciais de video:

  • controls — exibe a interface do reprodutor
  • width e height — evitam deslocamentos no layout
  • poster — miniatura antes da reprodução
  • preload="metadata" — padrão com bom desempenho
  • Responsivo: width: 100%; height: auto; ou aspect-ratio: 16/9
  • Video sem som pode ser reproduzido automaticamente; video com som não pode na maioria dos navegadores
Grátis para começar

Aprenda HTML com um tutor de IA — grátis

Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.

Cursos
40
Aulas
159

Perguntas Frequentes

A aula “O elemento video e a proporção da tela” é grátis?

Sim — o texto completo de “O elemento video e a proporção da tela” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de HTML Academy, atualize para CoddyKit PRO. O curso de HTML Academy inclui 4 aulas no total.

O que vou aprender em “O elemento video e a proporção da tela”?

Incorpore vídeos e mantenha a proporção correta da tela. Você pratica HTML Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar HTML Academy?

Nenhuma experiência prévia é necessária. HTML Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “O elemento video e a proporção da tela”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de HTML Academy?

Sim. Cada aula de HTML Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. O elemento audio: src controls loop autoplay
  2. O elemento video e a proporção da tela
  3. O elemento source para vários formatos
  4. Legendas com track e WebVTT
← Voltar para HTML Academy