Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] Oie! Vim mostrar minha soluçao pro desafio da lista suspensa

Primeiro eu fiz usando um select normal com options mas ao fazer os estilos n consegui mudar a cor de fundo das opçoes fui pesquisar e vi que muitos navegadores ignoram os estilos dos selects basicos entao criei o meu proprio para poder deixa o estilo mais proximo do figma

function ListaSuspensa() {
  const [open, setOpen] = useState(false);
  const [select, setSelect] = useState("Selecione uma opçao");

  const opcoes = [
    "IA",
    "Front-End",
    "Backend",
    "Deveops",
    "Data science",
    "Cloud",
  ];

  return (
    <div className="containerSelect">
      <button
        onClick={(e) => {
          e.preventDefault();
          setOpen(!open);
        }}
        className="selecao"
      >
        {select}
        <span>▼</span>
      </button>
      {open && (
        <ul className="lista-opcoes">
          {opcoes.map((opcao) => (
            <li
              key={opcao}
              onClick={() => {
                setSelect(opcao);
                setOpen(false);
              }}
              className="opcao"
            >
              {opcao}
            </li>
          ))}
        </ul>
      )}
    </div>
  );
}

ficou assim
Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta
solução!

Oi, Laurie!

Uau, que incrível sua solução para o desafio da lista suspensa! Parabéns por compartilhar com a gente.

Sua atitude de pesquisar o motivo pelo qual o <select> nativo é difícil de estilizar e, em vez de desistir, criar seu próprio componente foi fantástica! Essa é exatamente a mentalidade de uma ótima desenvolvedora: encontrar um problema, pesquisar a causa e criar uma solução criativa e robusta.

O resultado final ficou muito profissional e fiel ao design. Continue com essa proatividade e dedicação!

Espero ter ajudado! Bons estudos!

Sucesso

Imagem da comunidade