简体   繁体   中英

Carousel images are stacking, how do I stop them from stacking?

I'm trying to pull the most recent four images from a database into a carousel. The images are stacking on top of each other as one single slide of the carousel. I want them to be on four separate slides.

The carousel code:

 <div id="display" class="carousel" data-ride="carousel"> <!-- Indicators --> <ul class="carousel-indicators"> <li data-target="#display" data-slide-to="0" class="active"></li> <li data-target="#display" data-slide-to="1"></li> <li data-target="#display" data-slide-to="2"></li> <li data-target="#display" data-slide-to="3"></li> </ul> <!-- The slideshow --> <div class="carousel-inner"> <?php $db = mysqli_connect("localhost", "root", "", "gallery") or die(mysqli_error($db)); $q = "SELECT artefact_id, imagename FROM artefact ORDER BY artefact_id DESC LIMIT 4"; $results = mysqli_query ($db, $q) or die(mysqli_error($db)); $row = mysqli_fetch_array($results); print "<div class='item active'> <img src='images/{$row['imagename']}'> </div>\\n"; while($row=mysqli_fetch_array($results)) print "<div class='item'> <img src='images/{$row['imagename']}'> </div>\\n" ?> </div> <!-- Left and right controls --> <a class="left carousel-control" href="#display" data-slide="prev"> <span class="glyphicon glyohicon-chevron-left" aria-hidden="true"></span> <span class ="sr-only">Previous</span> </a> <a class="left carousel-control" href="#display" data-slide="next"> <span class="glyphicon glyohicon-chevron-right" aria-hidden="true"></span> <span class ="sr-only">Next</span> </a>

I have included these:

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">

<!-- jQuery library -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

<!-- Popper JS -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>

<!-- Latest compiled JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="css/style.css">

I will leave an example of what I mean here.

Your class names for the items are wrong. According to https://getbootstrap.com/docs/4.5/components/carousel/ the class names should be carousel-item , not item .

Change <div class='item active'> to <div class='carousel-item active'>

and <div class='item'> to <div class='carousel-item'>

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