Introdução
Neste laboratório, aprenderemos como criar um container responsivo com uma proporção especificada usando CSS. Você será apresentado à propriedade customizada --aspect-ratio e como usar a função calc() para calcular a altura do container. Você também aprenderá como configurar o elemento filho para manter a proporção usando a propriedade object-fit: cover. Ao final deste laboratório, você terá uma melhor compreensão de como criar containers visualmente atraentes e responsivos em suas páginas web.
Proporção (Aspect Ratio)
index.html e style.css já foram fornecidos na VM.
Este código cria um container responsivo com uma proporção específica usando propriedades customizadas CSS e a função calc(). Siga estes passos para conseguir isso:
- Defina a proporção desejada usando uma propriedade customizada CSS,
--aspect-ratio. - Defina a propriedade
positiondo elemento container pararelativee sua propriedadeheightpara0. - Calcule a altura do elemento container usando a função
calc()e a propriedade customizada--aspect-ratio, e defina-a como a propriedadepadding-bottom. - Defina o filho direto do elemento container para
position: absolute,top: 0,left: 0,width: 100%eheight: 100%. - Mantenha a proporção do elemento filho definindo sua propriedade
object-fitparacover.
Use o seguinte código HTML e CSS para criar o container:
<div class="container">
<img src="https://picsum.photos/id/119/800/450" />
</div>
.container {
--aspect-ratio: 16/9;
position: relative;
height: 0;
padding-bottom: calc(100% / var(--aspect-ratio));
}
.container > * {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
}
Por favor, clique em 'Go Live' no canto inferior direito para executar o serviço web na porta 8080. Em seguida, você pode atualizar a aba Web 8080 para visualizar a página web.
Resumo
Parabéns! Você concluiu o laboratório de Proporção (Aspect Ratio). Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.