CSS reveal from corner animation

后端 未结 5 485
小蘑菇
小蘑菇 2020-12-13 14:34

I am trying to achieve an animation effect as follows:

When a banner is shown, the bottom right corner of the next banner should be visible. When you click on this c

5条回答
  •  囚心锁ツ
    2020-12-13 15:11

    This sample working on Firefox, Chrome, IE.

    For change sliding rule change transition

    $(document).ready(function () {
        $('.angle').click(function() {
            var $parent = $(this).parent();
            $parent.removeClass("current");
            if ($parent.next().length){
            	$parent.next().addClass("current");
            } else {
            	$parent.prevAll().last().addClass("current");
            }
        });
    });
    body{
      height:100%;
      width:100%;
    }
    
    .slideShow {
        width: 100%;
        height: 100%;
    }
    
    .image {
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        overflow:hidden;
        z-index:1;
        transition:z-index 2s step-end, 1s opacity 1s ease-in-out;
        text-align:center;
        opacity:0;
        background-size:100% 100%;
        background-attachment:fixed;
    }
    .image.current{
        opacity:1;
        z-index:2;
        transition:z-index 2s step-end, 0s opacity 0s;
    }
    
    .angle {
        width: 200%;
        height: 200%;
        position: absolute;
        top: -100%;
        left: -100%;
        clip-path: polygon(100% 0, 0 70%,  0 100%, 100% 100%, 100% 0, 100% 0);
        z-index:3;
        margin-left:150%;
        margin-top:150%;
        transition:2s top ease-in-out, 2s left ease-in-out, 0s margin 2s;
        background-size:100% 100%;
        background-attachment:fixed;
    }
    .image.current .angle{
      top:0;
      left:0;
      margin-top:0;
      margin-left:0;
      transition:0s top ease-in-out 1s, 0s left ease-in-out 1s, 2s margin ease-in-out 1s;
    }
    .main{
      color:#FFF;
      display:inline-block;
      vertical-align:middle;
      font-family:arial;
      text-transform:uppercase;
      font-size:24px;
    }
    .middle{
      vertical-align:middle;
      width:0;
      height:100%;
      display:inline-block;
    }
    
    .image1, .image3 .angle{
      background-image: url(http://i3.imgbus.com/doimg/4c5o0m8m6o5n4e0.png);
    }
    .image1 .angle, .image2{
      background-image:url(http://i4.imgbus.com/doimg/1c7obm6m1o3nbb0.png);
    }
    .image2 .angle, .image3{
      background-image:url(http://i3.imgbus.com/doimg/ccbo5m2m8o8n759.jpg);
    }

    Also you can use SildeShow Maker softwares like Amazing Slider.

    easy download, easy use: download link

    it's very powerful software. see Screenshot

提交回复
热议问题