Bootstrap轮播动画

时间:2017-01-30 08:33:56

标签: html css animation carousel bootstrap-carousel

我试图将一些简单的动画添加到bootstrap轮播中。 代码如下:

<div class="container-fluid">
    <div class="row">
        <div class="col-md-12">
            <div id="myCarousel" class="carousel slide" data-ride="carousel">                
                <!-- Wrapper for slides -->
                <div class="carousel-inner" role="listbox">
                    <div class="item active"><img src="img/form3-1.jpg" alt="Chania"></div>
                    <div class="item"><img src="img/form3-2.jpg" alt="Chania"></div>
                    <div class="item"><img src="img/form3-3.jpg" alt="Flower"></div>
                </div>

                <!-- Left and right controls -->
                <a class="left carousel-control" href="#myCarousel" 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="#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>
    </div>
</div>

我要做的是在10秒的持续时间内将活动幻灯片刻度从1提高到1.5。 css如下:

#myCarousel .active > img{transform:scale(1.5); -webkit-transform: scale(1.5); -webkit-transition: -webkit-transform 10s ease-out;-moz-transition: -moz-transform 10s ease-out;transition: transform 10s ease-out;}

我知道HTML和CSS是正确的。 但是当页面加载时,出现的第一张幻灯片不会缩放,但是一旦幻灯片被更改,其余幻灯片就会完美无缺。即使我再次回到第一张幻灯片,它也会再次运行。我需要的是第一次加载,以修复第一张幻灯片的动画。

2 个答案:

答案 0 :(得分:1)

您的代码运行正常。 window load时间active class是默认状态。作为默认状态,您将看不到animation

我创建了片段,并为停止轮播动画设置了data-interval="false"。加载完成后如果使用leftright轮播控件,则会看到动画。您的第一张click leftright将成为第一张幻灯片。

  

默认状态不是第一次滑动。

&#13;
&#13;
#myCarousel .active > img{
  transform:scale(1.5);
  -webkit-transform: scale(1.5);
  -webkit-transition: -webkit-transform 10s ease-out;
  -moz-transition: -moz-transform 10s ease-out;
  transition: transform 10s ease-out;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
<div class="container-fluid">
    <div class="row">
        <div class="col-md-12">
            <div id="myCarousel" class="carousel slide" data-ride="carousel" data-interval="false">
                <!-- Wrapper for slides -->
                <div class="carousel-inner" role="listbox">
                    <div class="item active"><img src="http://placehold.it/1920x1080" alt="Chania"></div>
                    <div class="item"><img src="http://placehold.it/1920x1080" alt="Chania"></div>
                    <div class="item"><img src="http://placehold.it/1920x1080" alt="Flower"></div>
                </div>

                <!-- Left and right controls -->
                <a class="left carousel-control" href="#myCarousel" 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="#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>
    </div>
</div>
&#13;
&#13;
&#13;

我希望它会对你有所帮助。

  

注意:如果您想要自动播放,则应从生产网站中删除data-interval="false"。 (不要将data-interval="true"设置为自动播放。

答案 1 :(得分:0)

您可以使用关键帧 - 只需使用您需要的动画

$size
use Algorithm::Combinatorics qw(variations_with_repetition);

my @rep_vars = variations_with_repetition([0, 1], $size);