簡體   English   中英

Bootstrap 多項目輪播無響應

[英]Bootstrap Multi Item Carousel not responsive

我有一個多項目輪播,它在更寬的屏幕上顯示 6 個項目,但在較小的屏幕上繼續顯示 6 個項目。 它只是將它們堆疊在一起並與其他內容重疊。 我想在小屏幕上顯示 4 個項目,然后在超小屏幕上顯示 2 個項目。 我已經修改了這個 codepen 的代碼: https ://codepen.io/MhSami/pen/zNBMbj ,我發現這個響應速度更快的 codepen ( https://codepen.io/Qvatra/pen/yOvBoM ) 有 4 個項目,但是,當我嘗試將代碼更改為它時,它根本不顯示。

我目前的物品堆疊問題

當我嘗試將代碼更改為響應式輪播時

這是輪播的 html

<div class="container" style="background-color:white; height:140px; padding-top:15px">
    <div class="row">
        <div class="col-xs-11 col-md-12 col-centered">
                    <div class="carousel slide" data-ride="carousel" data-type="multi" data-interval="3500" id="myCarousel">
                        <div class="carousel-inner">
                            <div class="item active">
                                <div class="col-md-2 col-sm-3 col-xs-6">
                                    <div>
                                        <a href="{% url 'category-2' category2='arsenal' %}">
                                            <img src="{% static 'logo/arsenal_city_logo.png' %}" class="img-responsive" style="max-width:100px; max-height:110px">
                                        </a>
                                    </div>
                                </div>
                            </div>
                            <div class="item">
                                <div class="col-md-2 col-sm-3 col-xs-6">
                                    <a href="{% url 'category-2' category2='man_united' %}">
                                        <img src="{% static 'logo/manchester_united_fc_logo.png' %}" class="img-responsive" style="max-width:100px; max-height:110px">
                                    </a>
                                </div>
                            </div>
                            <div class="item">
                                <div class="col-md-2 col-sm-3 col-xs-6">
                                    <a href="{% url 'category-2' category2='fcb' %}">
                                        <img src="{% static 'logo/barcelona_logo.png' %}" class="img-responsive" style="max-width:100px; max-height:110px">
                                    </a>
                                </div>
                            </div>
                            <div class="item">
                                <div class="col-md-2 col-sm-3 col-xs-6">
                                    <a href="{% url 'category-2' category2='chelsea' %}">
                                        <img src="{% static 'logo/chelsea_logo.png' %}" class="img-responsive" style="max-width:100px; max-height:110px">
                                    </a>
                                </div>
                            </div>
                            <div class="item">
                                <div class="col-md-2 col-sm-3 col-xs-6">
                                    <a href="{% url 'category-2' category2='everton' %}">
                                        <img src="{% static 'logo/everton_fc_logo.png' %}" class="img-responsive" style="max-width:100px; max-height:110px">
                                    </a>
                                </div>
                            </div>
                            <div class="item">
                                <div class="col-md-2 col-sm-3 col-xs-6">
                                    <a href="{% url 'category-2' category2='liverpool' %}">
                                        <img src="{% static 'logo/liverpool_fc_logo.png' %}" class="img-responsive" style="max-width:100px; max-height:110px">
                                    </a>
                                </div>
                            </div>
                        </div>
                        <a class="left carousel-control" href="#myCarousel" data-slide="prev"><i class="glyphicon glyphicon-chevron-left"></i></a>
                        <a class="right carousel-control" href="#myCarousel" data-slide="next"><i class="glyphicon glyphicon-chevron-right"></i></a>
                    </div>
        </div>
    </div>
</div>

CSS:

.carousel-inner { margin: auto; width: 90%; }
.carousel-control            { width:  4%; }
.carousel-control.left,
.carousel-control.right {
  background-image:none;
}
 
.glyphicon-chevron-left, .carousel-control .glyphicon-chevron-right {
  margin-top:-10px;
  margin-left: -10px;
  color: #444;
}

.carousel-inner {
  a {
    display:table-cell;
    height: 180px;
    width: 200px;
    vertical-align: middle;
  }
  img {
    max-height: 150px;
    margin: auto auto;
    max-width: 100%;
  }
}

@media (min-width: 992px ) {

  .carousel-inner > .item.next,
  .carousel-inner > .item.active.right {
      left: 0;
      -webkit-transform: translate3d(16.7%, 0, 0);
      transform: translate3d(16.7%, 0, 0);
  }
  .carousel-inner > .item.prev,
  .carousel-inner > .item.active.left {
      left: 0;
      -webkit-transform: translate3d(-16.7%, 0, 0);
      transform: translate3d(-16.7%, 0, 0);
  }

}


@media (max-width: 992px ) {

    .carousel-inner > .item.next,
    .carousel-inner > .item.active.right {
        left: 0;
        -webkit-transform: translate3d(25%, 0, 0);
        transform: translate3d(25%, 0, 0);
    }

    .carousel-inner > .item.prev,
    .carousel-inner > .item.active.left {
        left: 0;
        -webkit-transform: translate3d(-25%, 0, 0);
        transform: translate3d(-25%, 0, 0);
    }
}

JS:

$('.carousel[data-type="multi"] .item').each(function(){
  var next = $(this).next();
  if (!next.length) {
    next = $(this).siblings(':first');
  }
  next.children(':first-child').clone().appendTo($(this));

  for (var i=0;i<2;i++) {
    next=next.next();
    if (!next.length) {
        next = $(this).siblings(':first');
    }
    
    next.children(':first-child').clone().appendTo($(this));
  }
});

我試過的:

  • 將代碼更改為響應式代碼筆但沒有成功
  • 更改各種屏幕尺寸的變換值。 您可以看到應該顯示 4 個項目的最終媒體 css 塊。

事實證明我以錯誤的順序導入腳本,這就是響應式代碼筆在我的環境中不起作用的原因

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM