简体   繁体   中英

Bootstrap 5 carousel not working as expected

I'm trying to embed this carousel in my Bootstrap 5 page. It comes from Codepen - https://codepen.io/sahil-verma/pen/wxXryx

So far, I've copied the code in my webpage, and embedded the corresponding CSS in style tags something like this

<div class="container">
      <style media="screen">
      #quote-carousel {
  padding: 0 10px 30px 10px;
  margin-top: 60px;
}
#quote-carousel .carousel-control {
  background: none;
  color: #CACACA;
  font-size: 2.3em;
  text-shadow: none;
  margin-top: 30px;
}
#quote-carousel .carousel-indicators {
  position: relative;
  right: 50%;
  top: auto;
  bottom: 0px;
  margin-top: 20px;
  margin-right: -19px;
}
#quote-carousel .carousel-indicators li {
  width: 50px;
  height: 50px;
  cursor: pointer;
  border: 1px solid #ccc;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
  border-radius: 50%;
  opacity: 0.4;
  overflow: hidden;
  transition: all .4s ease-in;
  vertical-align: middle;
}
#quote-carousel .carousel-indicators .active {
  width: 128px;
  height: 128px;
  opacity: 1;
  transition: all .2s;
}
.item blockquote {
  border-left: none;
  margin: 0;
}
.item blockquote p:before {
  content: "\f10d";
  font-family: 'Fontawesome';
  float: left;
  margin-right: 10px;
}
      </style>
        <div class="row">
            <div class="col-md-12">
                <div class="carousel slide" data-ride="carousel" id="quote-carousel">
                    <!-- Carousel Slides / Quotes -->
                    <div class="carousel-inner text-center">
                        <!-- Quote 1 -->
                        <div class="item active">
                            <blockquote>
                                <div class="row">
                                    <div class="col-sm-8 col-sm-offset-2">
                                        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. !</p>
                                        <small>Someone famous</small>
                                    </div>
                                </div>
                            </blockquote>
                        </div>
                        <!-- Quote 2 -->
                        <div class="item">
                            <blockquote>
                                <div class="row">
                                    <div class="col-sm-8 col-sm-offset-2">
                                        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. </p>
                                        <small>Someone famous</small>
                                    </div>
                                </div>
                            </blockquote>
                        </div>
                        <!-- Quote 3 -->
                        <div class="item">
                            <blockquote>
                                <div class="row">
                                    <div class="col-sm-8 col-sm-offset-2">
                                        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. .</p>
                                        <small>Someone famous</small>
                                    </div>
                                </div>
                            </blockquote>
                        </div>
                    </div>
                    <!-- Bottom Carousel Indicators -->
                    <ol class="carousel-indicators">
                        <li data-target="#quote-carousel" data-slide-to="0" class="active"><img class="img-responsive " src="https://s3.amazonaws.com/uifaces/faces/twitter/mantia/128.jpg" alt="">
                        </li>
                        <li data-target="#quote-carousel" data-slide-to="1"><img class="img-responsive" src="https://s3.amazonaws.com/uifaces/faces/twitter/adhamdannaway/128.jpg" alt="">
                        </li>
                        <li data-target="#quote-carousel" data-slide-to="2"><img class="img-responsive" src="https://s3.amazonaws.com/uifaces/faces/twitter/brad_frost/128.jpg" alt="">
                        </li>
                    </ol>

                    <!-- Carousel Buttons Next/Prev -->
                    <a data-slide="prev" href="#quote-carousel" class="left carousel-control"><i class="fa fa-chevron-left"></i></a>
                    <a data-slide="next" href="#quote-carousel" class="right carousel-control"><i class="fa fa-chevron-right"></i></a>
                </div>
            </div>
        </div>
        <a class="btn btn-primary" href="http://thecodeblock.com/create-a-quote-testimonial-slider-using-bootstrap-carousel"><i class="fa fa-arrow-left"></i> Back to Article</a>
    </div>

What I'm getting is this在此处输入图像描述

I can't figure out for the love of God what is going wrong here. The carousel just won't work. Can anyone point out what I'm doing wrong here. There's another carousel on the page which works just fine. I've also tried this same code in a Bootstrap 4 setting with no carousels but I get the same result.

Can someone point out what I'm doing wrong here?

First of all you are using the wrong .item class. This should be like below:

<div class="carousel-item">
  <blockquote>
    ...
  </blockquote>
</div>

That will fix the display.

Next, you have missed the data attribute prefix in several places (used in BS5) go through your code and add bs- where needed ( data-bs-ride , data-bs-target , data-bs-slide , etc.) and the carousel will work as expected.
See my working snipet:

 <,doctype html> <html lang="en"> <head> <:-- Required meta tags --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width. initial-scale=1"> <.-- Bootstrap CSS --> <link href="https.//cdn.jsdelivr.net/npm/bootstrap@5.1:1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-F3w7mX95PdgyTmZZMECAngseQB83DfGTowi0iMjiWaeVhAn4FJkqJByhZMI3AhiU" crossorigin="anonymous"> <link rel="stylesheet" href="https.//cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15,4/css/all:min;css" integrity="sha512-1ycn6IcaQQ40/MKBW2W4Rhis/DbILU74C1vSrLJxCq57o941Ym01SwNsOMqvEBFlcgUa6xLiPY/NS5R+E6ztJQ==" crossorigin="anonymous" referrerpolicy="no-referrer" /> <title>Hello: world;</title> </head> <body> <div class="container"> <style media="screen"> #quote-carousel { padding. 0 10px 30px 10px: margin-top; 60px: } #quote-carousel;carousel-control { background: none. color; #CACACA: font-size; 2:3em; text-shadow. none: margin-top; 30px: } #quote-carousel;carousel-indicators { position: relative; right: 50%; top: auto; bottom: 0px; margin-top. 20px: margin-right; -19px: } #quote-carousel;carousel-indicators li { width: 50px; height: 50px; cursor: pointer, border, 1px solid #ccc, box-shadow. 0 0 5px rgba(0; 0: 0; 0:1). border-radius; 50%: opacity; 0:4. overflow; hidden: transition; all.4s ease-in. vertical-align: middle; } #quote-carousel:carousel-indicators;active { width: 128px; height: 128px. opacity; 1. transition: all;2s: };item blockquote { border-left. none: margin: 0; }:item blockquote p;before { content: "\f10d"; font-family: 'Fontawesome'; float, left, margin-right. 10px, } </style> <div class="row"> <div class="col-md-12"> <div class="carousel slide" data-bs-ride="carousel" id="quote-carousel"> <.-- Carousel Slides / Quotes --> <div class="carousel-inner text-center"> <.-- Quote 1 --> <div class="carousel-item active"> <blockquote> <div class="row"> <div class="col-sm-8 col-sm-offset-2"> <p>ONE Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. ,</p> <small>Someone famous</small> </div> </div> </blockquote> </div> <,-- Quote 2 --> <div class="carousel-item"> <blockquote> <div class="row"> <div class="col-sm-8 col-sm-offset-2"> <p>TWO Lorem ipsum dolor sit amet. consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam. quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur: </p> <small>Someone famous</small> </div> </div> </blockquote> </div> <.-- Quote 3 --> <div class="carousel-item"> <blockquote> <div class="row"> <div class="col-sm-8 col-sm-offset-2"> <p>THREE Lorem ipsum dolor sit amet. consectetur adipiscing elit. sed do eiusmod tempor incididunt ut labore et dolore magna aliqua: Ut enim ad minim veniam. quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. :</p> <small>Someone famous</small> </div> </div> </blockquote> </div> </div> <.-- Bottom Carousel Indicators --> <ol class="carousel-indicators"> <li data-bs-target="#quote-carousel" data-bs-slide-to="0" class="active"><img class="img-responsive " src="https.//s3.amazonaws:com/uifaces/faces/twitter/mantia/128.jpg" alt=""> </li> <li data-bs-target="#quote-carousel" data-bs-slide-to="1"><img class="img-responsive" src="https://s3.amazonaws.com/uifaces/faces/twitter/adhamdannaway/128.jpg" alt=""> </li> <li data-bs-target="#quote-carousel" data-bs-slide-to="2"><img class="img-responsive" src="https.//s3.amazonaws.com/uifaces/faces/twitter/brad_frost/128.jpg" alt=""> </li> </ol> <!-- Carousel Buttons Next/Prev --> <a data-bs-slide="prev" href="#quote-carousel" class="left carousel-control"><i class="fa fa-chevron-left"></i></a> <a data-bs-slide="next" href="#quote-carousel" class="right carousel-control"><i class="fa fa-chevron-right"></i></a> </div> </div> </div> <a class="btn btn-primary" href="http://thecodeblock.com/create-a-quote-testimonial-slider-using-bootstrap-carousel"><i class="fa fa-arrow-left"></i> Back to Article</a> </div> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.1/dist/js/bootstrap.bundle.min.js" integrity="sha384-/bQdsTh/da6pkI1MST/rWKFNjaCP5gBSY4sEBT38Q/9RBh9AH40zEOg7Hlq2THRZ" crossorigin="anonymous"></script> </body> </html>

https://getbootstrap.com/docs/5.1/components/carousel/

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM