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
Nunca tente manipular um elemento antes de criá-lo.
Criar elementos dinamicamente é a base para listas, cards, tabelas e interfaces modernas.

Resumo da aula para nunca mais esquecer

  • createElement cria elementos HTML
  • Elementos só aparecem após serem inseridos no DOM
  • textContent define conteúdo textual
  • appendChild adiciona 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.

  • Gabinetes

  • Placas-Mãe

  • Processadores

  • Memória

  • Fontes

  • Drives Ópticos

  • Discos Rígidos

  • SSD

  • Placas de Som

  • Placas de Vídeo

Você Sabia?

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.


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.


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.


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.


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.