繁体   English   中英

如何更改Bootstrap的轮播从幻灯片到淡入淡出的过渡

[英]How to change Bootstrap's carousel transition from slide to fade

我有一个轻微的问题,改变AngularUi的过渡点击这里旋转木马过渡我想将旋转木马的标准滑动过渡更改为fadeIn FadeOut过渡单击此处在Plunker中呈现的示例我已经注释掉滑动过渡的CSS

`carousel-inner > .item {
        display: none;
        position: relative;
        -webkit-transition: 0.6s ease-in-out left;
        -moz-transition: 0.6s ease-in-out left;
        -o-transition: 0.6s ease-in-out left;
        transition: 0.6s ease-in-out left;`
}

我试图通过将其更改为以下来轻微操纵css动画以实现淡入淡出

 @-webkit-keyframes carousel-inner {
    0%{
        opacity: 0;
    }

    100%{
        opacity: 1;
    }
}

@keyframes carousel-inner{
     0%{
        opacity: 0;
    }

    100%{
        opacity: 1;
    }
}


.carousel-inner > .item {
    display: none;
    position: relative;
     -webkit-transition: opacity 0.4s ease-in-out;
    -moz-transition: opacity 0.4s ease-in-out;
    -o-transition: opacity 2s ease-in-out;
    transition: opacity 0.4s ease-in-out;
}

然而,它并没有像我想要的那样工作。 有没有人遇到过这个问题? 或者有人有解决问题的方法吗?

我遇到了同样的问题,终于搞定了。 来自angular-ui的轮播等待转换事件结束(它使用解析保证的转换模块),然后将活动类应用于下一张幻灯片。

在过渡期间,“主动”和“下一个”幻灯片都有“下一个”课程。 因此,您需要确保在应用“左”类时已经开始转换,否则模块不知道转换已结束以转到下一张幻灯片。

这是将旋转木马从滑动变为褪色的css。 我在旋转木马外部div上添加了一个额外的类fading

.carousel.fading .carousel-inner > .item {
  /* Override the properties for the default sliding carousel */
  display: block;
  position: absolute;
  left: 0 !important;

  /* Hide slides by default */
  opacity: 0;

  /* Set transition to opactity */
  -moz-transition: .6s ease-in-out opacity;
  -webkit-transition: .6s ease-in-out opacity;
  -o-transition: .6s ease-in-out opacity;
  transition: .6s ease-in-out opacity;
}

/* Active slides are visible on transition end */
.carousel.fading .carousel-inner > .active,
/* Next slide is visible during transition */
.carousel.fading .carousel-inner > .next.left {
    opacity: 1;
}
.carousel.fading .carousel-inner > .next,
.carousel.fading .carousel-inner > .active.left {
    opacity: 0;
}

这是我使用的SCSS代码:

.carousel.fading {
  .carousel-inner {
    height: 360px;
    .item {
      display: block;
      position: absolute;
      left: 0 !important;
      opacity: 0;
      @include transition(.6s ease-in-out opacity);
      &.active, &.next.left {
        opacity: 1;
      }
      &.next, &.active.left {
        opacity: 0;
      }
    }
  }
}

我还必须将旋转木马内部div的高度设置为我的图像的高度,因为幻灯片现在位于绝对位置。

更新2018年

Bootstrap 4.1将包含一个carousel-fade转换: Bootstrap 4.0.0 Carousel淡入淡出过渡

Bootstrap 3

我发现不透明度更适合淡化效果..

.carousel .item {
  opacity: 0;
  -webkit-transition-property: opacity;
  -moz-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity;
}

演示: http//bootply.com/91957

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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