4

我正在尝试在 Bootstrap 4 Alpha 6 中创建一个垂直方向的轮播。我仍然无法弄清楚为什么 Bootstrap 的人不包括这个方向,但我已经接近了我的解决方案自己的。我似乎在我的 CSS 中遗漏了一些东西,但似乎无法放置它。

在JSFIDDLE上查看我的演示

我的问题是旋转木马幻灯片的非向上流体运动。幻灯片从底部升起,但在结束时不会继续向上 - 而是消失。

我正在通过编译使用 BS3 执行此操作的旧方法并尝试尽可能匹配新的 CSS 类来构建此代码。这是我的代码,对于解决这个谜团的任何帮助将不胜感激。

HTML

<!-- Bootstrap Carousel -->
<div id="testCarousel" class="carousel slide vertical" data-ride="carousel">
    <ol class="carousel-indicators">
        <li data-target="#testCarousel" data-slide-to="0" class="active"></li>
        <li data-target="#testCarousel" data-slide-to="1"></li>
        <li data-target="#testCarousel" data-slide-to="2"></li>
    </ol>
    <div class="carousel-inner" role="listbox">
        <div class="carousel-item active">
            <img class="d-block img-fluid" src="//placehold.it/2500x750" alt="First slide">
        </div>
        <div class="carousel-item">
            <img class="d-block img-fluid" src="//placehold.it/2500x750" alt="Second slide">
        </div>
        <div class="carousel-item">
            <img class="d-block img-fluid" src="//placehold.it/2500x750" alt="Third slide">
        </div>
     </div>
</div>

CSS

/* Just for Example Purposes */
body {
  background: #333
}

/* Vertical Carousel */

.vertical .carousel-inner {
  height: 100%;
}

.carousel.vertical .carousel-item {
  -webkit-transition: 0.6s ease-in-out top;
     -moz-transition: 0.6s ease-in-out top;
      -ms-transition: 0.6s ease-in-out top;
       -o-transition: 0.6s ease-in-out top;
          transition: 0.6s ease-in-out top;
}

.carousel.vertical .active {
   top: 0;
}

.carousel.vertical .carousel-item-next {
   top: 100%;
}

.carousel.vertical .carousel-item-prev {
   top: -100%;
}

.carousel.vertical .carousel-item-next.carousel-item-left,
.carousel.vertical .carousel-item-prev.carousel-item-right {
   top: 0;
}

.carousel.vertical .active.carousel-item-left {
   top: -100%;
}

.carousel.vertical .active.carousel-item-right {
   top: 100%;
}

.carousel.vertical .carousel-item {
  left: 0;
}

因此,与其让轮播幻灯片闪烁或消失,然后重新出现,我希望它们自然地向上流动,就好像隐藏的图像没有像 Bootstrap 中的默认设置那样保持对齐。

提前致谢!!!

4

1 回答 1

10

Bootstrap 4.0.0 于 2018 年更新

Bootstrap 4 动画过渡使用,transform所以我认为最好使用translate将方向更改为垂直,以及每张幻灯片的位置...

演示: http: //www.codeply.com/go/PgxKT3h6x6

.vert .carousel-item-next.carousel-item-left,
.vert .carousel-item-prev.carousel-item-right {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.vert .carousel-item-next,
.vert .active.carousel-item-right {
    -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100% 0);
}

.vert .carousel-item-prev,
.vert .active.carousel-item-left {
-webkit-transform: translate3d(0,-100%, 0);
        transform: translate3d(0,-100%, 0);
}

垂直轮播演示

于 2017-03-20T18:36:02.370 回答