纯css : 实现图片左右切换效果(animation 属性、@keyframes 规则)

实现效果:
几张图片依次轮流切换(不会放动图。。。。)

思路:

  1. 先设定一个播放的盒子A,要求盒子的宽和高与图片的大小一致;
  2. 在设定一个容纳几张图片的盒子B,要求盒子的宽与所有图片的总宽一致,高度与图片一致;
  3. 将图片横向排放在盒子B中,用float属性做定位;
  4. 利用 animation 属性、@keyframes 规则 设置动画效果,实现切换的目的。

具体代码:

<div id="frame">
     <div class="photos">
          <img src="../images/ad1.png" height="342" width="759"/>
          <img src="../images/ad2.png" height="342" width="759"/>
          <img src="../images/ad3.png" height="342" width="759"/>
          <img src="../images/ad4.png" height="342" width="759"/>
      </div>
</div>
#frame                                     //盒子A
{
    width:769px;
    height:343px;
    margin-left: 30px;
    overflow: hidden;
    position: relative;
   /* border:1px solid darkorchid;*/
}
#frame .photos                           //盒子B
{
    width:3076px;
    height:343px;
    animation: move 10s ease infinite; 
        //animation属性要与keyframes规则进行绑定
       //注意 动画效果,可根据具体情况调整
}
#frame .photos img
{
    width:769px;
    height:343px;
    float:left;                          //横向排列在盒子B里
}
@keyframes move
{
    0%, 15% {margin-left: 0;}
    25%, 40% {margin-left: -769px;}
    55%, 70% {margin-left: -1538px;}
    85%, 100% {margin-left: -2307px;}     //图片的张数不同,设置也不一样
}

啦啦啦,这样就实现了哦!!


接下来,具体介绍一下animation 属性@keyframes 规则

animation 属性:
在这里插入图片描述
具体属性介绍,可点击此处了解

@keyframes 规则:

  1. from to 规则====%0 %100
    即:从动画开始播放到动画结束。

  2. 使用百分比规则(百分比的设定与动画播放时间有关);

  • 6
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
DW(Dreamweaver)是一个网页制作软件,可以通过使用JavaScript和jQuery等技术实现图片自动切换效果。下面是一个基于DIV和CSS实现图片自动切换效果的示例代码: HTML代码: ```html <div class="slideshow-container"> <div class="mySlides fade"> <img src="image1.jpg" style="width:100%"> </div> <div class="mySlides fade"> <img src="image2.jpg" style="width:100%"> </div> <div class="mySlides fade"> <img src="image3.jpg" style="width:100%"> </div> </div> ``` CSS代码: ```css .slideshow-container { position: relative; width: 100%; height: 400px; } .mySlides { display: none; position: absolute; top: 0; left: 0; right: 0; bottom: 0; } .mySlides img { width: 100%; height: 100%; } /* Fading animation */ .fade { -webkit-animation-name: fade; -webkit-animation-duration: 1.5s; animation-name: fade; animation-duration: 1.5s; } @-webkit-keyframes fade { from {opacity: .4} to {opacity: 1} } @keyframes fade { from {opacity: .4} to {opacity: 1} } ``` JavaScript代码: ```javascript var slideIndex = 0; showSlides(); function showSlides() { var i; var slides = document.getElementsByClassName("mySlides"); for (i = 0; i < slides.length; i++) { slides[i].style.display = "none"; } slideIndex++; if (slideIndex > slides.length) {slideIndex = 1} slides[slideIndex-1].style.display = "block"; setTimeout(showSlides, 2000); // 切换时间间隔为2秒 } ``` 这段代码实现了每2秒钟自动切换一次图片,并且在切换时使用了淡入淡出的效果。你可以根据自己的需要修改切换时间间隔和淡入淡出的效果

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值