1
resposta

[Reclamação] Discrepância nos códigos.

Eu fui escrevendo os meu código seguindo aula por aula, no final eu obtive o sequinte trecho no CSS:

.checkbox-customizado {
    width: 20px;
    height: 20px;
    background-color: var(--neutro);
    border: 1px solid var(--preto);
    cursor: pointer;
    border-radius: 10px;
    margin-right: 8px;
}

.checked {
    background-color: var(--preto);
    position: relative;
}

.checked::after {
    content: "";
    position: absolute;
    left: 30%;
    top: -10%;
    width: 5px;
    height: 14px;
    border-top: 2px solid var(--neutro);
    border-left: 2px solid var(--neutro);
    transform: rotate(-140deg);
}

Quando eu fui conferir a resposta do instrutor na parte de "faça como eu fiz", o código estava diferente da seguinte forma:

.customCheckbox {
    width: 20px;
    height: 20px;
    background-color: white;
    border: 1px solid black;
    cursor: pointer;
    display: inline-block;
    vertical-align: middle;
    border-radius: 4px;
}

.customCheckbox.checked {
    background-color: black;
    position: relative;
}

.customCheckbox.checked::after {
    content: "";
    position: absolute;
    left: 30%;
    top: -10%;
    width: 5px;
    height: 14px;
    border-top: 2px solid white;
    border-left: 2px solid white;
    transform: rotate(-140deg);
}

Para tirar a prova eu fui conferir como estava o projeto no github e lá eu encontrei uma terceira forma:

.checkbox-customizado {
    width: 20px;
    height: 20px;
    background-color: var(--neutro);
    border: 1px solid var(--preto);
    cursor: pointer;
    border-radius: 4px;
}

.checked {
    background-color: var(--preto);
    position: relative;
}

.checkbox-customizado.checked::after {
    content: "";
    position: absolute;
    left: 30%;
    top: -10%;
    width: 5px;
    height: 14px;

    border-top: 2px solid var(--neutro);
    border-left: 2px solid var(--neutro);

    transform: rotate(-140deg);
}

Para facilitar, as diferentas são nos nomes das classes CSS, mas aulas elas ficam

.checkbox-customizado .checked .checked::after

Na opinião do instrutor elas ficam

.customCheckbox .customCheckbox.checked .customCheckbox.checked::after

E no github pelo link https://github.com/alura-cursos/3801-javascript-pra-web/tree/aula-01 as classes ficam

.checkbox-customizado .checked .checkbox-customizado.checked::after

Eu já não sei se o meu projeto está certo, o elemento ao qual se referem essas classes deveria ter um comportamento que ainda não tem e eu não sei se ele já deveria ter ou se esse comportamento vai ser introduzido mais pra frente no curso, seria bom se houvesse uma constância no material de referência. Eu não gosto de ser o chato de vai reclamar mas está confuso assim.

1 resposta

Bom dia Mateus, entendo perfeitamente o seu ponto, já passei por isso também, mas vou deixar aqui um relato meu com a visão experiência profissional, beleza?

Primeiramente, notamos que os nome das váriaveis são diferentes de fato, mas vemos que conseguimos identificar ainda qual classe referesse a qual classe. Exemplo: .checkbox-customizado é o .customCheckbox. Pois ela só padronizou o nome para o inglês.

Essa analise é até boa para você como experiência, pois isso ocorre muito no nosso dia a dia de trabalho, canso de realizar PR (Pull Request) no projeto e vir um monte de altereções no código e ter que entender o que foi feito e dar continuada no desenvolvimento.

Nesse seu caso aí o mais importante é verificar os atributos das classes se mantém os mesmos ou se sofrerão alguma alteração.

Enfim, não sei se é intencional da parte do instrutor essas renomeação nas classes e ids, mas o interessante é pelo menos eles comentarem nos videos que fizeram essas alterações nas declarações, para que o aluno consiga ir no repositório e dar uma olhada antes da próxima aula. Mas boa sorte nas suas aulas e estarei de olho no forúm aguardando futuras dúvidas.