Bootstrap carrousel plusieurs cadres à la fois
C'est l'effet que j'essaie d'obtenir avec Bootstrap 3 carrousel
au lieu de simplement montrer une image à la fois, il affiche N Images glissées à côté. Puis quand vous glissez (ou quand il glisse automatiquement), il déplace le groupe de glissements comme il le fait.
cela Peut-il être fait avec bootstrap 3 du carrousel? J'espère ne pas avoir à aller à la chasse pour un autre jQuery plugin...
13 réponses
est-ce possible avec le carrousel de bootstrap 3? J'espère que je n'aurai pas pour aller à la chasse pour encore un autre plugin jQuery
de 2013-12-08 la réponse est non. L'effet recherché n'est pas possible avec le plugin carousel générique de Bootstrap 3. Cependant, voici un simple plugin jQuery qui semble faire exactement ce que vous voulez http://sorgalla.com/jcarousel /
mise à jour 2018
Bootstrap 4
le carrousel a changé en 4.x, et les transitions d'animation multi-diapositives peuvent être supplantées comme ceci...
.carousel-inner .carousel-item-right.active,
.carousel-inner .carousel-item-next {
transform: translateX(33.33%);
}
.carousel-inner .carousel-item-left.active,
.carousel-inner .carousel-item-prev {
transform: translateX(-33.33%)
}
.carousel-inner .carousel-item-right,
.carousel-inner .carousel-item-left{
transform: translateX(0);
}
Bootstrap 4 Alpha.Démo
Bootstrap 4.0.0 (show 4, advance 1 at a time) )
Bootstrap 4.1.0 (à l'avance tous les 4 à la fois)
une autre option est un responsive carrousel qui montre et avance seulement 1 diapo sur des écrans plus petits. Au lieu de cloner les diapos comme dans l'exemple précédent, celle-ci ajuste la CSS et utilise jQuery uniquement pour déplacer les diapos supplémentaires pour permettre le cyclage continu (enroule autour):
ne faites pas que copier-coller ce code. Tout d'abord, comprendre comment il fonctionne.
Bootstrap 4 Réactive (show 3, 1 diapositive sur mobile)
@media (min-width: 768px) {
/* show 3 items */
.carousel-inner .active,
.carousel-inner .active + .carousel-item,
.carousel-inner .active + .carousel-item + .carousel-item {
display: block;
}
.carousel-inner .carousel-item.active:not(.carousel-item-right):not(.carousel-item-left),
.carousel-inner .carousel-item.active:not(.carousel-item-right):not(.carousel-item-left) + .carousel-item,
.carousel-inner .carousel-item.active:not(.carousel-item-right):not(.carousel-item-left) + .carousel-item + .carousel-item {
transition: none;
}
.carousel-inner .carousel-item-next,
.carousel-inner .carousel-item-prev {
position: relative;
transform: translate3d(0, 0, 0);
}
.carousel-inner .active.carousel-item + .carousel-item + .carousel-item + .carousel-item {
position: absolute;
top: 0;
right: -33.3333%;
z-index: -1;
display: block;
visibility: visible;
}
/* left or forward direction */
.active.carousel-item-left + .carousel-item-next.carousel-item-left,
.carousel-item-next.carousel-item-left + .carousel-item,
.carousel-item-next.carousel-item-left + .carousel-item + .carousel-item,
.carousel-item-next.carousel-item-left + .carousel-item + .carousel-item + .carousel-item {
position: relative;
transform: translate3d(-100%, 0, 0);
visibility: visible;
}
/* farthest right hidden item must be abso position for animations */
.carousel-inner .carousel-item-prev.carousel-item-right {
position: absolute;
top: 0;
left: 0;
z-index: -1;
display: block;
visibility: visible;
}
/* right or prev direction */
.active.carousel-item-right + .carousel-item-prev.carousel-item-right,
.carousel-item-prev.carousel-item-right + .carousel-item,
.carousel-item-prev.carousel-item-right + .carousel-item + .carousel-item,
.carousel-item-prev.carousel-item-right + .carousel-item + .carousel-item + .carousel-item {
position: relative;
transform: translate3d(100%, 0, 0);
visibility: visible;
display: block;
visibility: visible;
}
}
<div class="container-fluid">
<div id="carouselExample" class="carousel slide" data-ride="carousel" data-interval="9000">
<div class="carousel-inner row w-100 mx-auto" role="listbox">
<div class="carousel-item col-md-4 active">
<img class="img-fluid mx-auto d-block" src="//placehold.it/600x400/000/fff?text=1" alt="slide 1">
</div>
<div class="carousel-item col-md-4">
<img class="img-fluid mx-auto d-block" src="//placehold.it/600x400?text=2" alt="slide 2">
</div>
<div class="carousel-item col-md-4">
<img class="img-fluid mx-auto d-block" src="//placehold.it/600x400?text=3" alt="slide 3">
</div>
<div class="carousel-item col-md-4">
<img class="img-fluid mx-auto d-block" src="//placehold.it/600x400?text=4" alt="slide 4">
</div>
<div class="carousel-item col-md-4">
<img class="img-fluid mx-auto d-block" src="//placehold.it/600x400?text=5" alt="slide 5">
</div>
<div class="carousel-item col-md-4">
<img class="img-fluid mx-auto d-block" src="//placehold.it/600x400?text=6" alt="slide 6">
</div>
<div class="carousel-item col-md-4">
<img class="img-fluid mx-auto d-block" src="//placehold.it/600x400?text=7" alt="slide 7">
</div>
<div class="carousel-item col-md-4">
<img class="img-fluid mx-auto d-block" src="//placehold.it/600x400?text=8" alt="slide 7">
</div>
</div>
<a class="carousel-control-prev" href="#carouselExample" role="button" data-slide="prev">
<i class="fa fa-chevron-left fa-lg text-muted"></i>
<span class="sr-only">Previous</span>
</a>
<a class="carousel-control-next text-faded" href="#carouselExample" role="button" data-slide="next">
<i class="fa fa-chevron-right fa-lg text-muted"></i>
<span class="sr-only">Next</span>
</a>
</div>
</div>
Exemple Bootstrap 4 Réactive (show 4, 1 diapositive sur mobile)
Bootstrap 3
voici un 3.x exemple sur Bootply: http://bootply.com/89193
vous devez mettre une rangée entière d'images dans l'élément actif. Voici une autre version qui n'empile pas les images à des largeurs d'écran plus petites: http://bootply.com/92514
MODIFIER approche Alternative à la avancer d'une diapositive à la fois :
utilisez jQuery pour cloner les éléments suivants..
$('.carousel .item').each(function(){
var next = $(this).next();
if (!next.length) {
next = $(this).siblings(':first');
}
next.children(':first-child').clone().appendTo($(this));
if (next.next().length>0) {
next.next().children(':first-child').clone().appendTo($(this));
}
else {
$(this).siblings(':first').children(':first-child').clone().appendTo($(this));
}
});
et ensuite CSS pour se positionner en conséquence...
avant 3.3.1
.carousel-inner .active.left { left: -33%; }
.carousel-inner .next { left: 33%; }
après 3.3.1
.carousel-inner .item.left.active {
transform: translateX(-33%);
}
.carousel-inner .item.right.active {
transform: translateX(33%);
}
.carousel-inner .item.next {
transform: translateX(33%)
}
.carousel-inner .item.prev {
transform: translateX(-33%)
}
.carousel-inner .item.right,
.carousel-inner .item.left {
transform: translateX(0);
}
ce sera montrer 3 à la fois, mais seulement la diapositive un à la fois:
S'il te plaît. ne vous contentez pas de copier-coller ce code. Tout d'abord, comprendre comment il fonctionne. Cette réponse est ici pour vous aider à apprendre .
doublement de ce bootstrap Modifié 4 carrousel fonctionne seulement la moitié correctement (boucle de défilement arrête de fonctionner)
comment faire 2 Bootstrap sliders en une seule page sans mélanger leur css et jquery?
Ce est un travail de twitter bootstrap 3.
voici le javascript :
$('#myCarousel').carousel({
interval: 10000
})
$('.carousel .item').each(function(){
var next = $(this).next();
if (!next.length) {
next = $(this).siblings(':first');
}
next.children(':first-child').clone().appendTo($(this));
if (next.next().length>0) {
next.next().children(':first-child').clone().appendTo($(this));
}
else {
$(this).siblings(':first').children(':first-child').clone().appendTo($(this));
}
});
et le css :
.carousel-inner .active.left { left: -33%; }
.carousel-inner .active.right { left: 33%; }
.carousel-inner .next { left: 33% }
.carousel-inner .prev { left: -33% }
.carousel-control.left { background-image: none; }
.carousel-control.right { background-image: none; }
.carousel-inner .item { background: white; }
vous pouvez le voir en action à ce Jsfiddle
La raison pour laquelle j'ai ajouté cette réponse parce que les autres ne fonctionnent pas entièrement. J'ai trouvé 2 bugs à l'intérieur, l'un d'eux était que la flèche de gauche a généré un effet étrange et l'autre était sur le texte devenant gras dans certaines situations sorcière peut être résolu en définissant la couleur de fond de sorte que l'élément du bas ne sera pas visible tandis que l'effet de transition.
toutes les solutions ci-dessus sont hacky et buggy. N'essayez même pas. Utilisez d'autres libs. Le meilleur que j'ai trouvé - http://sachinchoolur.github.io/lightslider Fonctionne très bien avec bootstrap, n'ajoute pas de fichier HTML indésirable, hautement configurable, responsive, mobile-friendly etc...
$('.multi-item-carousel').lightSlider({
item: 4,
pager: false,
autoWidth: false,
slideMargin: 0
});
C'est ce qui a fonctionné pour moi. Très simple jQuery et CSS pour faire responsive carrousel fonctionne indépendamment des carrousels sur la même page. Hautement personnalisable mais essentiellement une div avec espace blanc nowrap contenant un tas d'éléments inline-bloc et mettre le dernier au début de reculer ou le premier à la fin pour aller de l'avant. Merci insertAfter
!
$('.carosel-control-right').click(function() {
$(this).blur();
$(this).parent().find('.carosel-item').first().insertAfter($(this).parent().find('.carosel-item').last());
});
$('.carosel-control-left').click(function() {
$(this).blur();
$(this).parent().find('.carosel-item').last().insertBefore($(this).parent().find('.carosel-item').first());
});
@media (max-width: 300px) {
.carosel-item {
width: 100%;
}
}
@media (min-width: 300px) {
.carosel-item {
width: 50%;
}
}
@media (min-width: 500px) {
.carosel-item {
width: 33.333%;
}
}
@media (min-width: 768px) {
.carosel-item {
width: 25%;
}
}
.carosel {
position: relative;
background-color: #000;
}
.carosel-inner {
white-space: nowrap;
overflow: hidden;
font-size: 0;
}
.carosel-item {
display: inline-block;
}
.carosel-control {
position: absolute;
top: 50%;
padding: 15px;
box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.5);
transform: translateY(-50%);
border-radius: 50%;
color: rgba(0, 0, 0, 0.5);
font-size: 30px;
display: inline-block;
}
.carosel-control-left {
left: 15px;
}
.carosel-control-right {
right: 15px;
}
.carosel-control:active,
.carosel-control:hover {
text-decoration: none;
color: rgba(0, 0, 0, 0.8);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="carosel" id="carosel1">
<a class="carosel-control carosel-control-left glyphicon glyphicon-chevron-left" href="#"></a>
<div class="carosel-inner">
<img class="carosel-item" src="http://placehold.it/500/bbbbbb/fff&text=1" />
<img class="carosel-item" src="http://placehold.it/500/CCCCCC&text=2" />
<img class="carosel-item" src="http://placehold.it/500/eeeeee&text=3" />
<img class="carosel-item" src="http://placehold.it/500/f4f4f4&text=4" />
<img class="carosel-item" src="http://placehold.it/500/fcfcfc/333&text=5" />
<img class="carosel-item" src="http://placehold.it/500/f477f4/fff&text=6" />
</div>
<a class="carosel-control carosel-control-right glyphicon glyphicon-chevron-right" href="#"></a>
</div>
<div class="carosel" id="carosel2">
<a class="carosel-control carosel-control-left glyphicon glyphicon-chevron-left" href="#"></a>
<div class="carosel-inner">
<img class="carosel-item" src="http://placehold.it/500/bbbbbb/fff&text=1" />
<img class="carosel-item" src="http://placehold.it/500/CCCCCC&text=2" />
<img class="carosel-item" src="http://placehold.it/500/eeeeee&text=3" />
<img class="carosel-item" src="http://placehold.it/500/f4f4f4&text=4" />
<img class="carosel-item" src="http://placehold.it/500/fcfcfc/333&text=5" />
<img class="carosel-item" src="http://placehold.it/500/f477f4/fff&text=6" />
</div>
<a class="carosel-control carosel-control-right glyphicon glyphicon-chevron-right" href="#"></a>
</div>
la réponse La plus populaire est juste, mais je pense que le code est inutilement complexe. Avec le même css, ce code jquery est plus facile à comprendre je crois:
$('#myCarousel').carousel({
interval: 10000
})
$('.carousel .item').each(function() {
var item = $(this);
item.siblings().each(function(index) {
if (index < 4) {
$(this).children(':first-child').clone().appendTo(item);
}
});
});
essayez ceci....ça marche dans le mien.... code:
<div class="container">
<br>
<div id="myCarousel" class="carousel slide" data-ride="carousel">
<!-- Indicators -->
<ol class="carousel-indicators">
<li data-target="#myCarousel" data-slide-to="0" class="active"></li>
<li data-target="#myCarousel" data-slide-to="1"></li>
<li data-target="#myCarousel" data-slide-to="2"></li>
<li data-target="#myCarousel" data-slide-to="3"></li>
</ol>
<!-- Wrapper for slides -->
<div class="carousel-inner" role="listbox">
<div class="item active">
<div class="span4" style="padding-left: 18px;">
<img src="http://placehold.it/290x180" class="img-thumbnail">
<img src="http://placehold.it/290x180" class="img-thumbnail">
<img src="http://placehold.it/290x180" class="img-thumbnail">
</div>
</div>
<div class="item">
<div class="span4" style="padding-left: 18px;">
<img src="http://placehold.it/290x180" class="img-thumbnail">
<img src="http://placehold.it/290x180" class="img-thumbnail">
<img src="http://placehold.it/290x180" class="img-thumbnail">
</div>
</div>
</div>
<a class="right carousel-control" href="#myCarousel" role="button" data-slide="next">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div>
</div>
$('#carousel-example-generic').on('slid.bs.carousel', function () {
$(".item.active:nth-child(" + ($(".carousel-inner .item").length -1) + ") + .item").insertBefore($(".item:first-child"));
$(".item.active:last-child").insertBefore($(".item:first-child"));
});
.item.active,
.item.active + .item,
.item.active + .item + .item {
width: 33.3%;
display: block;
float:left;
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<div id="carousel-example-generic" class="carousel slide" data-ride="carousel" style="max-width:800px;">
<!-- Indicators -->
<ol class="carousel-indicators">
<li data-target="#carousel-example-generic" data-slide-to="0" class="active"></li>
<li data-target="#carousel-example-generic" data-slide-to="1"></li>
<li data-target="#carousel-example-generic" data-slide-to="2"></li>
</ol>
<!-- Wrapper for slides -->
<div class="carousel-inner" role="listbox">
<div class="item active">
<img data-src="holder.js/300x200?text=1">
</div>
<div class="item">
<img data-src="holder.js/300x200?text=2">
</div>
<div class="item">
<img data-src="holder.js/300x200?text=3">
</div>
<div class="item">
<img data-src="holder.js/300x200?text=4">
</div>
<div class="item">
<img data-src="holder.js/300x200?text=5">
</div>
<div class="item">
<img data-src="holder.js/300x200?text=6">
</div>
<div class="item">
<img data-src="holder.js/300x200?text=7">
</div>
</div>
<!-- Controls -->
<a class="left carousel-control" href="#carousel-example-generic" role="button" data-slide="prev">
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a class="right carousel-control" href="#carousel-example-generic" role="button" data-slide="next">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/holder/2.9.1/holder.min.js"></script>
j'ai eu le même problème et les solutions décrites ici ont bien fonctionné. Mais je voulais prendre en charge les changements de taille de fenêtre (et de mise en page). Le résultat est une petite bibliothèque qui résout tous les calculs. Regardez ici: https://github.com/SocialbitGmbH/BootstrapCarouselPageMerger
pour faire fonctionner le script, vous devez ajouter un nouveau <div>
wrapper avec la classe .item-content
directement dans votre .item
<div>
. Exemple:
<div class="carousel slide multiple" id="very-cool-carousel" data-ride="carousel">
<div class="carousel-inner" role="listbox">
<div class="item active">
<div class="item-content">
First page
</div>
</div>
<div class="item active">
<div class="item-content">
Second page
</div>
</div>
</div>
</div>
Usage de cette bibliothèque:
socialbitBootstrapCarouselPageMerger.run('div.carousel');
pour modifier les paramètres:
socialbitBootstrapCarouselPageMerger.settings.spaceCalculationFactor = 0.82;
exemple:
comme vous pouvez le voir, le carrousel est mis à jour pour afficher plus de contrôles lorsque vous redimensionnez la fenêtre. Consultez le réglage watchWindowSizeTimeout
pour contrôler le délai de réaction aux changements de taille de fenêtre.
<!--css code-->
.carousel-showsixmoveone .carousel-control {
width: 4%;
background-image: none;
}
.carousel-showsixmoveone .carousel-control.left {
margin-left: 15px;
}
.carousel-showsixmoveone .carousel-control.right {
margin-right: 15px;
}
.carousel-showsixmoveone .cloneditem-1,
.carousel-showsixmoveone .cloneditem-2,
.carousel-showsixmoveone .cloneditem-3,
.carousel-showsixmoveone .cloneditem-4,
.carousel-showsixmoveone .cloneditem-5 {
display: none;
}
@media all and (min-width: 768px) {
.carousel-showsixmoveone .carousel-inner > .active.left,
.carousel-showsixmoveone .carousel-inner > .prev {
left: -33.333%;
}
.carousel-showsixmoveone .carousel-inner > .active.right,
.carousel-showsixmoveone .carousel-inner > .next {
left: 33.333%;
}
.carousel-showsixmoveone .carousel-inner > .left,
.carousel-showsixmoveone .carousel-inner > .prev.right,
.carousel-showsixmoveone .carousel-inner > .active {
left: 0;
}
.carousel-showsixmoveone .carousel-inner .cloneditem-1,
.carousel-showsixmoveone .carousel-inner .cloneditem-2 {
display: block;
}
}
@media all and (min-width: 768px) and (transform-3d),
all and (min-width: 768px) and (-webkit-transform-3d) {
.carousel-showsixmoveone .carousel-inner > .item.active.right,
.carousel-showsixmoveone .carousel-inner > .item.next {
-webkit-transform: translate3d(33.333%, 0, 0);
transform: translate3d(33.333%, 0, 0);
left: 0;
}
.carousel-showsixmoveone .carousel-inner > .item.active.left,
.carousel-showsixmoveone .carousel-inner > .item.prev {
-webkit-transform: translate3d(-33.333%, 0, 0);
transform: translate3d(-33.333%, 0, 0);
left: 0;
}
.carousel-showsixmoveone .carousel-inner > .item.left,
.carousel-showsixmoveone .carousel-inner > .item.prev.right,
.carousel-showsixmoveone .carousel-inner > .item.active {
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
left: 0;
}
}
@media all and (min-width: 992px) {
.carousel-showsixmoveone .carousel-inner > .active.left,
.carousel-showsixmoveone .carousel-inner > .prev {
left: -16.666%;
}
.carousel-showsixmoveone .carousel-inner > .active.right,
.carousel-showsixmoveone .carousel-inner > .next {
left: 16.666%;
}
.carousel-showsixmoveone .carousel-inner > .left,
.carousel-showsixmoveone .carousel-inner > .prev.right,
.carousel-showsixmoveone .carousel-inner > .active {
left: 0;
}
.carousel-showsixmoveone .carousel-inner .cloneditem-3,
.carousel-showsixmoveone .carousel-inner .cloneditem-4,
.carousel-showsixmoveone .carousel-inner .cloneditem-5 {
display: block;
}
}
@media all and (min-width: 992px) and (transform-3d),
all and (min-width: 992px) and (-webkit-transform-3d) {
.carousel-showsixmoveone .carousel-inner > .item.active.right,
.carousel-showsixmoveone .carousel-inner > .item.next {
-webkit-transform: translate3d(16.666%, 0, 0);
transform: translate3d(16.666%, 0, 0);
left: 0;
}
.carousel-showsixmoveone .carousel-inner > .item.active.left,
.carousel-showsixmoveone .carousel-inner > .item.prev {
-webkit-transform: translate3d(-16.666%, 0, 0);
transform: translate3d(-16.666%, 0, 0);
left: 0;
}
.carousel-showsixmoveone .carousel-inner > .item.left,
.carousel-showsixmoveone .carousel-inner > .item.prev.right,
.carousel-showsixmoveone .carousel-inner > .item.active {
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
left: 0;
}
}
<!-- begin snippet: js hide: false console: true -->
<!--html-->
<div class="row ">
<div class="col-md-12">
<div class="carousel carousel-showsixmoveone slide" id="chocolatelist" data-interval="30000">
<div class="carousel-inner">
<div class="item active">
<div class="col-xs-12 col-sm-4 col-md-2">
<a href="#">
<img src="http://placehold.it/500/0054A6/fff/&text=1" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-1">
<a href="#">
<img src="http://placehold.it/500/002d5a/fff/&text=2" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-2">
<a href="#">
<img src="http://placehold.it/500/d6d6d6/333&text=3" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-3">
<a href="#">
<img src="http://placehold.it/500/002040/eeeeee&text=4" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-4">
<a href="#">
<img src="http://placehold.it/500/0054A6/fff/&text=5" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-5">
<a href="#">
<img src="http://placehold.it/500/002d5a/fff/&text=6" class="img-responsive">
</a>
</div>
</div>
<div class="item">
<div class="col-xs-12 col-sm-4 col-md-2">
<a href="#">
<img src="http://placehold.it/500/002d5a/fff/&text=2" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-1">
<a href="#">
<img src="http://placehold.it/500/d6d6d6/333&text=3" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-2">
<a href="#">
<img src="http://placehold.it/500/002040/eeeeee&text=4" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-3">
<a href="#">
<img src="http://placehold.it/500/0054A6/fff/&text=5" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-4">
<a href="#">
<img src="http://placehold.it/500/002d5a/fff/&text=6" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-5">
<a href="#">
<img src="http://placehold.it/500/eeeeee&text=7" class="img-responsive">
</a>
</div>
</div>
<div class="item">
<div class="col-xs-12 col-sm-4 col-md-2">
<a href="#">
<img src="http://placehold.it/500/d6d6d6/333&text=3" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-1">
<a href="#">
<img src="http://placehold.it/500/002040/eeeeee&text=4" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-2">
<a href="#">
<img src="http://placehold.it/500/0054A6/fff/&text=5" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-3">
<a href="#">
<img src="http://placehold.it/500/002d5a/fff/&text=6" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-4">
<a href="#">
<img src="http://placehold.it/500/eeeeee&text=7" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-5">
<a href="#">
<img src="http://placehold.it/500/40a1ff/002040&text=8" class="img-responsive">
</a>
</div>
</div>
<div class="item">
<div class="col-xs-12 col-sm-4 col-md-2">
<a href="#">
<img src="http://placehold.it/500/002040/eeeeee&text=4" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-1">
<a href="#">
<img src="http://placehold.it/500/0054A6/fff/&text=5" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-2">
<a href="#">
<img src="http://placehold.it/500/002d5a/fff/&text=6" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-3">
<a href="#">
<img src="http://placehold.it/500/eeeeee&text=7" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-4">
<a href="#">
<img src="http://placehold.it/500/40a1ff/002040&text=8" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-5">
<a href="#">
<img src="http://placehold.it/500/0054A6/fff/&text=1" class="img-responsive">
</a>
</div>
</div>
<div class="item">
<div class="col-xs-12 col-sm-4 col-md-2">
<a href="#">
<img src="http://placehold.it/500/0054A6/fff/&text=5" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-1">
<a href="#">
<img src="http://placehold.it/500/002d5a/fff/&text=6" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-2">
<a href="#">
<img src="http://placehold.it/500/eeeeee&text=7" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-3">
<a href="#">
<img src="http://placehold.it/500/40a1ff/002040&text=8" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-4">
<a href="#">
<img src="http://placehold.it/500/0054A6/fff/&text=1" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-5">
<a href="#">
<img src="http://placehold.it/500/002d5a/fff/&text=2" class="img-responsive">
</a>
</div>
</div>
<div class="item">
<div class="col-xs-12 col-sm-4 col-md-2">
<a href="#">
<img src="http://placehold.it/500/002d5a/fff/&text=6" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-1">
<a href="#">
<img src="http://placehold.it/500/eeeeee&text=7" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-2">
<a href="#">
<img src="http://placehold.it/500/40a1ff/002040&text=8" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-3">
<a href="#">
<img src="http://placehold.it/500/0054A6/fff/&text=1" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-4">
<a href="#">
<img src="http://placehold.it/500/002d5a/fff/&text=2" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-5">
<a href="#">
<img src="http://placehold.it/500/d6d6d6/333&text=3" class="img-responsive">
</a>
</div>
</div>
<div class="item">
<div class="col-xs-12 col-sm-4 col-md-2">
<a href="#">
<img src="http://placehold.it/500/eeeeee&text=7" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-1">
<a href="#">
<img src="http://placehold.it/500/40a1ff/002040&text=8" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-2">
<a href="#">
<img src="http://placehold.it/500/0054A6/fff/&text=1" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-3">
<a href="#">
<img src="http://placehold.it/500/002d5a/fff/&text=2" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-4">
<a href="#">
<img src="http://placehold.it/500/d6d6d6/333&text=3" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-5">
<a href="#">
<img src="http://placehold.it/500/002040/eeeeee&text=4" class="img-responsive">
</a>
</div>
</div>
<div class="item">
<div class="col-xs-12 col-sm-4 col-md-2">
<a href="#">
<img src="http://placehold.it/500/40a1ff/002040&text=8" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-1">
<a href="#">
<img src="http://placehold.it/500/0054A6/fff/&text=1" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-2">
<a href="#">
<img src="http://placehold.it/500/002d5a/fff/&text=2" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-3">
<a href="#">
<img src="http://placehold.it/500/d6d6d6/333&text=3" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-4">
<a href="#">
<img src="http://placehold.it/500/002040/eeeeee&text=4" class="img-responsive">
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-2 cloneditem-5">
<a href="#">
<img src="http://placehold.it/500/0054A6/fff/&text=5" class="img-responsive">
</a>
</div>
</div>
</div>
<a class="left carousel-control" href="#chocolatelist" data-slide="prev"><i class="glyphicon glyphicon-chevron-left "></i></a>
<a class="right carousel-control" href="#chocolatelist" data-slide="next"><i class="glyphicon glyphicon-chevron-right"></i></a>
</div>
</div>
</div>
collez ce code vous obtiendrez un indice. lien de l'image du carrousel de la diapositive
Try this code
<div id="recommended-item-carousel" class="carousel slide" data-ride="carousel">
<div class="carousel-inner">
<div class="item active">
<div class="col-sm-3">
<div class="product-image-wrapper">
<div class="single-products">
<div class="productinfo text-center">
<img src="img/home/recommend1.jpg" alt="" />
<h2></h2>
<p>
Easy Polo Black Edition
</p>
<a href="#" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>Add to cart</a>
</div>
</div>
</div>
</div>
<div class="col-sm-3">
<div class="product-image-wrapper">
<div class="single-products">
<div class="productinfo text-center">
<img src="img/home/recommend2.jpg" alt="" />
<h2></h2>
<p>
Easy Polo Black Edition
</p>
<a href="#" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>Add to cart</a>
</div>
</div>
</div>
</div>
<div class="col-sm-3">
<div class="product-image-wrapper">
<div class="single-products">
<div class="productinfo text-center">
<img src="img/home/recommend3.jpg" alt="" />
<h2></h2>
<p>
Easy Polo Black Edition
</p>
<a href="#" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>Add to cart</a>
</div>
</div>
</div>
</div>
</div>
<div class="item">
<div class="col-sm-3">
<div class="product-image-wrapper">
<div class="single-products">
<div class="productinfo text-center">
<img src="img/home/recommend1.jpg" alt="" />
<h2></h2>
<p>
Easy Polo Black Edition
</p>
<a href="#" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>Add to cart</a>
</div>
</div>
</div>
</div>
<div class="col-sm-3">
<div class="product-image-wrapper">
<div class="single-products">
<div class="productinfo text-center">
<img src="img/home/recommend2.jpg" alt="" />
<h2></h2>
<p>
Easy Polo Black Edition
</p>
<a href="#" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>Add to cart</a>
</div>
</div>
</div>
</div>
<div class="col-sm-3">
<div class="product-image-wrapper">
<div class="single-products">
<div class="productinfo text-center">
<img src="img/home/recommend3.jpg" alt="" />
<h2></h2>
<p>
Easy Polo Black Edition
</p>
<a href="#" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>Add to cart</a>
</div>
</div>
</div>
</div>
</div>
</div>
<a class="left recommended-item-control" href="#recommended-item-carousel" data-slide="prev"> <i class="fa fa-angle-left"></i> </a>
<a class="right recommended-item-control" href="#recommended-item-carousel" data-slide="next"> <i class="fa fa-angle-right"></i> </a>
</div>
j'ai vu vos questions et réponses, et fait un nouveau responsive et flexible multi items carrousel Gist. vous pouvez le voir ici:
https://gist.github.com/IVIR3zaM/d143a361e61459146ae7c68ce86b066e
Vous pouvez ajouter plusieurs li dans la balise ol qui a l'attribut comme classe avec la valeur "carrousel-indicators" et avec les données-slide-to a des valeurs séquentielles comme 0 à 6 ou 0 à 9.
que vous avez juste besoin de copier et coller le div qui a l'attribut comme classe avec la valeur"élément".
ça me va.
<div data-ride="carousel" class="carousel slide" id="myCarousel">
<!-- Indicators -->
<ol class="carousel-indicators">
<li class="" data-slide-to="0" data-target="#myCarousel"></li>
<li data-slide-to="1" data-target="#myCarousel" class=""></li>
<li data-slide-to="2" data-target="#myCarousel" class="active"></li>
<li data-slide-to="3" data-target="#myCarousel" class=""></li>
<li data-slide-to="4" data-target="#myCarousel" class=""></li>
<li data-slide-to="5" data-target="#myCarousel" class=""></li>
<li data-slide-to="6" data-target="#myCarousel" class=""></li>
</ol>
<div role="listbox" class="carousel-inner">
<div class="item active">
<img alt="First slide" src="images/carousel/11.jpg"
class="first-slide">
</div>
<div class="item">
<img alt="Second slide" src="images/carousel/22.jpg"
class="second-slide">
</div>
<div class="item">
<img alt="Third slide" src="images/carousel/33.jpg"
class="third-slide">
</div>
<div class="item">
<img alt="Third slide" src="images/carousel/44.jpeg"
class="fourth-slide">
</div>
<div class="item">
<img alt="Third slide" src="images/carousel/55.jpg"
class="third-slide">
</div>
<div class="item">
<img alt="Third slide" src="images/carousel/66.jpg"
class="third-slide">
</div>
<div class="item">
<img alt="Third slide" src="images/carousel/77.jpg"
class="third-slide">
</div>
</div>
<a data-slide="prev" role="button" href="#myCarousel"
class="left carousel-control"> <span aria-hidden="true"
class="glyphicon glyphicon-chevron-left"></span> <span
class="sr-only">Previous</span>
</a> <a data-slide="next" role="button" href="#myCarousel"
class="right carousel-control"> <span aria-hidden="true"
class="glyphicon glyphicon-chevron-right"></span> <span
class="sr-only">Next</span>
</a>
</div>