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?
Street Fighter 2
Street Fighter 2, lançado para o Super Nintendo no início dos anos 90, foi o principal responsável pelo aumento nas vendas deste console. Graças ao sucesso do título nos Arcades e à perfeita adaptação ao console, muitos consumidores adquiriram o SNES para jogarem o título em casa. Saiba mais.
Música tema do Blanka
Até a primeira metade dos anos 90 era bastante comum que as trilhas sonoras dos games fossem criadas por mulheres e a responsável pelas músicas do clássico Street Fighter 2 foi Yoko Shimomura. Segundo ela, o ritmo "Tararirarin" da música tema do personagem Blanka, do Brasil, veio à sua cabeça enquanto ela estava no trem a caminho da Capcom.
Galaxy Game
As primeiras máquinas de fliperama do mundo a utilizarem moedas, chamadas de Galaxy Game, custavam mais de 20 mil dólares para serem produzidas. Saiba mais sobre elas aqui.
Final Fantasy
O famoso título Final Fantasy, da Square Enix, tem este nome exatamente porque se tratava da última esperança da empresa, que estava à beira da falência quando o lançou. Clique aqui e conheça detalhes dessa história.
Pac Man
Apenas no ano de 1982, o clássico Pac Man vendeu mais de 400 mil máquinas de fliperama em todo o mundo e recebeu cerca de 7 bilhões de moedas nestas máquinas. Saiba mais.










