1
resposta

Minha resolução

Minha ideia foi utilizar a função onclick diretamente no elemento do HTML, misturando um pouco o conceito do uso de atributo, com classes, foi isso que eu fiz:

HTML:

<!DOCTYPE html>
<html lang="en" >
<head>
  <meta charset="UTF-8">
  <title>Manipulando o DOM - Aula 3</title>
  <link rel="stylesheet" href="./style.css">
</head>
<body>

  <button onclick="mostrarTintas()">Mostrar tintas em estoque:</button>

  <ul class="lista">
    <li cor="laranja" tipo="tinta-exterior" class="item">Tinta laranja</li>
    <li cor="vermelho" tipo="tinta-interior" class="item">Tinta vermelha</li>
    <li cor="branco" tipo="tinta-interior" class="item">Tinta branca</li>
    <li cor="amarelo" tipo="tinta-exterior" class="item">Tinta amarela</li>
    <li cor="rosa" tipo="tinta-exterior" class="item">Tinta rosa</li>
    <li cor="preto" tipo="tinta-exterior" class="item">Tinta preta</li>
  </ul>

  <button onclick="ocultarTintas()" class="btn-oculto" data-botao_ocultar="">Ocultar lista de tintas</button>

  <a href="https://alura.com.br/" target="_blank"><img src="https://www.alura.com.br/assets/img/home/alura-logo.svg" alt="" class="alura-logo"></a>



  <script src="./main.js"></script>
</body>
</html>

CSS:

.btn-oculto {
  display: none;
}

  .lista {
    display: none;
    padding: 20px;
    list-style-type: none;
    border: 4mm ridge rgba(234, 122, 11, 0.992);
  }

JS:

var botaoOculto = document.querySelector('[data-botao_ocultar]')
var lista = document.querySelector('.lista');

function mostrarTintas(){
    lista.style.display = 'block';
    botaoOculto.style.display = 'block';
}

function ocultarTintas(){
    lista.style.display = 'none';
    botaoOculto.style.display = 'none';
}
1 resposta

Sim, está correto! O código HTML define os elementos da página, o CSS* estiliza esses elementos e o JavaScript adiciona interatividade à página, tornando possível a exibição e ocultação de elementos com os botões "Mostrar tintas em estoque" e "Ocultar lista de tintas".

Parabéns!