Até agora, manipulamos elementos que já existiam no HTML, usando seletores como getElementById e querySelector.
Mas aplicações modernas vão além disso: elas criam elementos dinamicamente, conforme os dados chegam ou conforme o usuário interage.
Nesta aula, vamos aprender a criar elementos HTML usando apenas JavaScript.
🎯 Objetivo da aula
Ao final desta aula, você será capaz de:
- Criar elementos HTML via JavaScript
- Definir conteúdo e atributos
- Inserir elementos na página
- Entender o fluxo de criação dinâmica
- Preparar o terreno para aplicações interativas
Por que criar elementos dinamicamente?
Imagine cenários como:
- Lista de usuários vinda de uma API
- Lista de tarefas adicionadas pelo usuário
- Cards de produtos carregados dinamicamente
Nesses casos, o HTML não nasce pronto. Ele é construído pelo JavaScript.
Passo 1 — Criando um elemento
Para criar um elemento HTML, usamos document.createElement.
const paragrafo = document.createElement("p");
console.log(paragrafo);
console.log(paragrafo); // Saída será um elemento <p> vazio Nesse momento, o elemento existe apenas na memória — ele ainda não está na página.
Passo 2 — Definindo conteúdo
Agora vamos adicionar texto ao elemento:
paragrafo.textContent = "Olá, mundo dinâmico!"; Também poderíamos usar innerHTML, mas veremos depois quando isso é adequado.
Passo 3 — Inserindo na página
Para inserir o elemento no DOM, usamos appendChild ou append.
document.body.appendChild(paragrafo); Agora o parágrafo aparece na tela.
Criando um elemento completo
Vamos criar um elemento do zero, com texto e inserção:
const titulo = document.createElement("h2");
titulo.textContent = "Título criado via JavaScript";
document.body.appendChild(titulo);
Adicionando atributos
Podemos definir atributos como id, class e outros:
const div = document.createElement("div"); div.id = "container"; div.className = "box destaque";
div.textContent = "Conteúdo da div";
document.body.appendChild(div);
Isso é muito comum ao criar componentes visuais.
Exemplo real: criando uma lista dinâmica
Vamos criar uma lista a partir de um array:
const tarefas = ["Estudar JS", "Praticar DOM", "Criar projetos"];
const ul = document.createElement("ul");
tarefas.forEach(tarefa => {
const li = document.createElement("li");
li.textContent = tarefa;
ul.appendChild(li);
});
document.body.appendChild(ul);
Aqui o HTML é totalmente construído pelo JavaScript.
Ordem mental correta
Sempre pense neste fluxo:
- Criar o elemento
- Configurar conteúdo e atributos
- Inserir no DOM
Resumo da aula para nunca mais esquecer
createElementcria elementos HTML- Elementos só aparecem após serem inseridos no DOM
textContentdefine conteúdo textualappendChildadiciona elementos na página- HTML pode ser criado totalmente via JavaScript
Na próxima aula, vamos aprender sobre delegação de eventos, essencial para trabalhar com elementos criados dinamicamente.
HARDWARE
Entendendo o seu computador
O que há dentro do meu computador?
Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.
Você Sabia?
Ultima Online
Criar um jogo é muito mais complexo do que parece. São milhares, às vezes, milhões de linhas de código. Isso não é exagero! Apenas o jogo Ultima Online possui 6.006.313 linhas de programação, totalizando 25.103.295 palavras
Tetris
O título Tetris detém o recorde de jogo mais adaptado de todos os tempos. No total foram mais de 60 plataformas diferentes que receberam alguma versão do quebra-cabeças criado por Alexey Pajitnov. Conheça mais sobre este incrível jogo clicando aqui.
Asteroids
O título Asteroids, do Atari, possui recorde de pontuação há 30 anos. Em 1982 um americano chamado Scott Safran atingiu a marca de 41.336.440. Atualmente ele faz parte de um minúsculo grupo de jogadores que conseguiram manter seus recordes por mais de 30 anos.
Civilization
A empresa Take-Two pagou à Infogrames mais de 22 milhões de dólares pelos direitos de Civilization, em novembro de 1994. Ainda sobre este título, Sid Meier, um dos seus fundadores, é o profissional da área dos games mais premiado em todo o mundo.
Senhas
Digitar senhas em computadores de uso coletivo é extremamente perigoso, pois além de softwares de monitoramento, existem dispositivos de hardware que podem capturar suas senhas. Evite ao máximo acessar sites de bancos a partir destes computadores. Veja mais aqui.










