2
respostas

[Dúvida] Minha imagem não fica como o exemplo

Ela está ficando por baixo do texto, mas a ideia seria ao lado. print do meu projeto Código HTML

<div class="card">
            <!-- 1ª linha -->
            <div class="card__descrição">
                <!--1ª coluna-->
                <div class="descrição">
                    <h3 class="descrição__titulo">Talvez você também se interesse por...</h3>
                    <h2 class="descrição__titulo-livro">Angular 11 e Firebase</h2>
                    <p class="descrição__texto">Construindo uma aplicação integrada com a plataforma do Google.</p>
                </div>
                <!--2ª coluna-->
                <img src="img/Angular.svg" class="descrição__imagem">
            </div>

            <!--2ª linha-->
            <div class="card__botões">
                <!--1ª coluna-->
                <ul class="botões">
                    <li class="botões__item"><img src="img/Favoritos.svg" alt="favoritar livro"></li>
                    <li class="botões__item"><img src="img/Compras.svg" alt="adicionar no carrinho de compras"></li>
                </ul>
                <!--2ª coluna-->
                <a href="#" class="botões__ancora">Saiba mais</a>
            </div>
        </div>

Código CSS:

.card__descricao {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.5em;
}

.card__botões {
    display: flex;
    justify-content: space-between;
}

.botões {
    display: flex;
}

.card {
    background: var(--branco);
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    border-radius: 10px;
    margin: 1em;
    padding: 1em;
}

.descrição__titulo {
    color: var(--laranja);
    font-weight: 700;
}

.descrição__titulo-livro {
    color: var(--azul);
    font-size: 18px;
    font-weight: 700;
    margin: 0.5em 0;
}

.descrição__texto {
    font-size: 14px;
}

.botões__item {
    margin: 0 0.5em;
}

.botões__ancora {
    background-color: var(--laranja);
    padding: 1em 2.2em;
    color: var(--branco);
    font-weight: 700;
    text-decoration: none;
}
2 respostas

Olá, Thalita! Tudo bem?

No seu código HTML, a classe card__descrição está correta, mas no CSS, ela está escrita como card__descricao (sem o acento). Corrija o nome da classe no CSS para card__descrição. Após essas correções, a imagem deve se alinhar ao lado do texto. Se ainda não funcionar, pode haver outros estilos conflitantes no seu CSS que não foram incluídos aqui.

Espero ter ajudado!

Siga firme nos seus estudos e conte com o fórum sempre que precisar!

Abraços :)

Caso este post tenha lhe ajudado, por favor, marcar como solucionado

Fala, Thalita!

Nomear classes sem acentuação é uma boa prática no HTML. Recomendo que, ao invés de usar <div class="descrição">, você use <div class="descricao">, por exemplo.

Recomendo fazer esse ajuste também nas classes onde você usou o termo "botões", escolha nomear usando "botoes". Ou, até mesmo, use a abreviação para buttons que é "btns".

Repare que, em <h3 class="descrição__titulo">, você não acentuou a palavra título, logo é preferível manter um padrão único. Faz sentido?