3
respostas

[Bug] meu carrossel não espaça as imagens e também não to conseguindo repetir as setas no carrossel mais vendidos dos mais vendidos

<section class="carrossel">
        <h2 class="carrossel__titulo"> ÚLTIMOS LANÇAMENTOS</h2>
        <!-- Slider main container -->
        <div class="swiper-container">
            <!-- Additional required wrapper -->

            <!-- If we need pagination -->
            <div class="swiper-pagination"></div>

                <div class="swiper-wrapper">
                    <!-- Slides -->
                    <div class="swiper-slide"><img src="/img/ApacheKafka.svg"
                            alt="Livro sobre apache kafka e spring boot do alura books"></div>
                    <div class="swiper-slide"><img src="/img/Liderança.svg"
                            alt="Livro sobre liderança em desing da alura books"></div>
                    <div class="swiper-slide"><img src="/img/Javascript.svg"
                            alt="Livro sobre javascript assertivo da alura books"></div>
                    <div class="swiper-slide"><img src="/img/Guia Front-end.svg" alt="Livro Guia front end"></div>
                    <div class="swiper-slide"><img src="/img/Portugol.svg" alt="Livro sobre Portugol"></div>
                    <div class="swiper-slide"><img src="/img/Acessibilidade.svg" alt="Livro sobre Acessibilidade"></div>



                </div>
            

            <!-- If we need navigation buttons -->
            <div class="swiper-button-prev"></div>
            <div class="swiper-button-next"></div>
        </div>

        <div class="card">
            <!--Primeira Linha-->
            <div class="card__descrição">
                <!--Primeira 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>
                <!--Segunda Coluna-->
                <img src="img/Angular.svg" class="descrição__imagem">
            </div>
            <!--Segunda Linha-->
            <div class="card__botões">
                <!--Primeira 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/Sacola.svg" alt="Adicionar no carrinho de compras"></li>
                </ul>
                <!--Segunda Coluna-->
                <a href="#" class="botões__ancora">Saiba mais</a>
            </div>
        </div>
    </section>
.carrossel__titulo {
    color: var(--laranja);
    background-color: var(--branco);
    text-align: center;
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 700;
    padding: 1em 0 0.5em 0;
}


.swiper-slide img {
    width: 100%;
}

.swiper-button-prev,
.swiper-button-next {
    display: none;
}

.swiper-pagination {
    position: initial;
    margin: 0.5em 0;
}

.card__descrição {
    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: #FFFFFF;
    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-2);
    font-weight: 700;
    font-size: 18px;
    margin: 0.5em 0;
}

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

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

@media screen and (min-width: 1024px) {

    .carrossel__titulo {
        font-size: 26px
    }

    .swiper-pagination {
        margin: 2em 0 3em 0;
    }

    .swiper-container{
        width: 60%;
       
    }

    .swiper-container{
        padding: 0 1em 1em;
    }

    .swiper-button-prev,
    .swiper-button-next {
        display: block;
        top: 85%;
    }

    .card {
        width: 40%;
        margin: 2em auto;
    }

    

}
3 respostas

Opa Thiago, tudo certo?

Uma possível causa desse comportamento é a falta do script que realiza o espaçamento (spaceBetween) entre os elementos e define a quantidade de slides (slidesPerView) que aparecerão na tela:

<script>
        const swiper = new Swiper('.swiper', {
        spaceBetween: 10,
        slidesPerView: 3,
        pagination: {
            el: '.swiper-pagination',
            type: 'bullets',
        },
        });
        

</script>

Recomendo verificar se ao adicionar esse script ao final da página o problema será resolvido, caso não seja, peço que por gentileza compartilhe o link do seu projeto completo no Github.

Fico à disposição.

Tenha um bom dia e bons estudos.

https://github.com/thpiinheiro02/bug-chato me ajuda!!!!!!!

Opa Thiago.

O problema em questão ocorre pela falta da div "swiper", usada em nosso script para realizar as alterações no carrossel:

        <div class="swiper-container">

            <div class="swiper">
            
            <div class="swiper-pagination"></div>

Fico à disposição.

Tenha um bom dia e bons estudos.