Manipulando elementos de acordo com a altura da janela

Se você várias vezes já se pegou manipulando elementos com JavaScript e jQuery nem precisa ler esse post, sei lá, vai ler sobre Ionic 🙂

Caso você esteja começando no mundo do Front-end talvez você tenha tido esta dúvida. Como eu faço pra deixar um elemento (como uma div) da altura da janela?

Manipulando eventos com JavaScript

Um amigo me perguntou essa semana, e aí me lembrei que quando eu comecei, uma das primeiras coisas que eu quis aprender com Javascript foi isso, inclusive meu site tem isso, olha aqui:

Capa de Site

Eu chamo esse efeito de capa de site, acho que todo mundo chama assim. Ele é muito usado em sites One Page (aqueles sites que só tem uma página e você navega nela mesmo).

Exemplos de site com capa:

Hands On

HTML

Vamos criar um HTML simples com duas divs, uma que será a capa, outra com conteúdo, algo como isso abaixo. Também vamos criar uma função no onload, que vai ser a nossa função pra pegar a altura da janela e setar na nossa capa.

 

CSS

Pra não ficar tão feio, vamos colocar uma cor de fundo em cada div. Coloque a cor que você quiser, mas se estiver sem ideias:

 

JavaScript

Agora que começa a brincadeira. Primeiro, vamos armazenar em uma variável a altura do navegador. Depois, vamos atribuir a div #capa, a altura que acabamos de armazenar. Simplão!

Resultado:

Você pode, como teste, colocar a mesma altura na segunda div (com id#conteudo) e ver se você realmente aprendeu como se faz.

Outra brincadeira.

Coloque cada uma das divs, com metade da altura da tela.

CSS3

Atualmente, com CSS3, existem outras formas, sem Javascript de fazer a mesma coisa, colocando uma div com altura relativa a janela. Porém, infelizmente não é totalmente compatível com IE.

Se você não está nem ligando pro IE/Edge, deixa um comentário abaixo que eu posto sobre as medidas relativas do CSS3.

 

Ficou com dúvida? Deixa aí nos comentários!

André Felizardo

Share
Published by
André Felizardo

Recent Posts

Blockchain & Cripto

Desvendando o Potencial da Blockchain e Criptomoedas através da Criptografia Em um mundo onde a…

7 meses ago

Automatize o deploy de uma aplicação React com Github Actions e FTP

O deploy de uma aplicação React é uma etapa crucial para disponibilizar sua criação na…

1 ano ago

Github Satellite 2020 – Muitas novidades

Satellite 2020 foi a primeira conferência virtual do Github. O Github já tinha sido liberado…

5 anos ago

Web Components – Guia Geral

Neste guia veremos o que são web components, quando usar, sua estrutura e também um…

5 anos ago

Tipos de Frontend

A alguns anos atrás escrevi um texto sobre o que é o frontend, também palestrei…

5 anos ago

SVG – Guia definitivo

O que é SVG é a sigla para Scalable Vector Graphics que traduzindo seria gráficos…

5 anos ago