summaryrefslogtreecommitdiff
path: root/www/lib/ng-mfb/mfb/src/_/_slidein-spring.scss
blob: 7a08d72db911b4abf9b424841302cc696aaed166 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
@mixin effects-slidein-spring{

/**
 * SLIDE IN SPRING
 * Same as slide-in but with a springy animation.
 *
 */

  .mfb-component--tl.mfb-slidein-spring,
  .mfb-component--tr.mfb-slidein-spring{
    .mfb-component__list li{
      opacity: 0;
      transition: all $slide-speed;
      transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
    }
    @for $i from 1 through $number-of-child-buttons {
      .mfb-component__list li:nth-child( #{$i} ) {
        transition-delay: #{$i * 0.05}s;
      }
    }
    &[data-mfb-toggle="hover"]:hover,
    &[data-mfb-state="open"]{
      .mfb-component__list{
        li{
          opacity: 1;
        }
        @for $i from 1 through $number-of-child-buttons {
          $distance: $button-space * $i;
          li:nth-child( #{$i} ) {
            transition-delay: #{$i * 0.05}s;
            -webkit-transform: translateY( $distance );
                    transform: translateY( $distance ); }
        }
      }
    }
  }

  .mfb-component--bl.mfb-slidein-spring,
  .mfb-component--br.mfb-slidein-spring{
    .mfb-component__list li{
      opacity: 0;
      transition: all $slide-speed;
      transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
    }
    @for $i from 1 through $number-of-child-buttons {
      .mfb-component__list li:nth-child( #{$i} ) {
        transition-delay: #{$i * 0.05}s;
      }
    }
    &[data-mfb-toggle="hover"]:hover,
    &[data-mfb-state="open"]{
      .mfb-component__list{
        li{
          opacity: 1;
        }
        @for $i from 1 through $number-of-child-buttons {
          $distance: -1 * $button-space * $i;
          li:nth-child( #{$i} ) {
            transition-delay: #{$i * 0.05}s;
            -webkit-transform: translateY( $distance );
                    transform: translateY( $distance ); }
        }
      }
    }
  }

}