<svg class=“wing left” viewBox=“0 0 50 100”
style="-webkit-animation-duration: .35s;
-moz-animation-duration: .35s;
-ms-animation-duration: .35s;
-o-animation-duration: .35s;
animation-duration: .35s;">
<svg class=“wing right” viewBox=“0 0 50 100”
style="-webkit-animation-duration: .35s;
-moz-animation-duration: .35s;
-ms-animation-duration: .53s;
-o-animation-duration: .35s;
animation-duration: .35s;">
style="margin-top: -250px; margin-left: 300px;
-webkit-animation-duration: 4s;
-moz-animation-duration: 4s;
-ms-animation-duration: 4s;
-o-animation-duration: 4s;
animation-duration: 4s;">
<svg class=“wing left” viewBox=“0 0 50 100”
style="-webkit-animation-duration: .45s;
-moz-animation-duration: .45s;
-ms-animation-duration: .45s;
-o-animation-duration: .45s;
animation-duration: .45s;">
<svg class=“wing right” viewBox=“0 0 50 100”
style="-webkit-animation-duration: .45s;
-moz-animation-duration: .45s;
-ms-animation-duration: .45s;
-o-animation-duration: .45s;
animation-duration: .45s;">
style.css
/**
- MIXINS
*/
/* SYMBOLS */
/**
- KEYFRAMES
*/
@-webkit-keyframes rotating {
0% {
-webkit-transform: rotate3d(0, 0, 0, 0deg);
-moz-transform: rotate3d(0, 0, 0, 0deg);
-ms-transform: rotate3d(0, 0, 0, 0deg);
-o-transform: rotate3d(0, 0, 0, 0deg);
transform: rotate3d(0, 0, 0, 0deg);
}
100% {
-webkit-transform: rotate3d(0, 1, 0, 720deg);
-moz-transform: rotate3d(0, 1, 0, 720deg);
-ms-transform: rotate3d(0, 1, 0, 720deg);
-o-transform: rotate3d(0, 1, 0, 720deg);
transform: rotate3d(0, 1, 0, 720deg);
}
}
@-moz-keyframes rotating {
0% {
-webkit-transform: rotate3d(0, 0, 0, 0deg);
-moz-transform: rotate3d(0, 0, 0, 0deg);
-ms-transform: rotate3d(0, 0, 0, 0deg);
-o-transform: rotate3d(0, 0, 0, 0deg);
transform: rotate3d(0, 0, 0, 0deg);
}
100% {
-webkit-transform: rotate3d(0, 1, 0, 720deg);
-moz-transform: rotate3d(0, 1, 0, 720deg);
-ms-transform: rotate3d(0, 1, 0, 720deg);
-o-transform: rotate3d(0, 1, 0, 720deg);
transform: rotate3d(0, 1, 0, 720deg);
}
}
@-ms-keyframes rotating {
0% {
-webkit-transform: rotate3d(0, 0, 0, 0deg);
-moz-transform: rotate3d(0, 0, 0, 0deg);
-ms-transform: rotate3d(0, 0, 0, 0deg);
-o-transform: rotate3d(0, 0, 0, 0deg);
transform: rotate3d(0, 0, 0, 0deg);
}
100% {
-webkit-transform: rotate3d(0, 1, 0, 720deg);
-moz-transform: rotate3d(0, 1, 0, 720deg);
-ms-transform: rotate3d(0, 1, 0, 720deg);
-o-transform: rotate3d(0, 1, 0, 720deg);
transform: rotate3d(0, 1, 0, 720deg);
}
}
@-o-keyframes rotating {
0% {
-webkit-transform: rotate3d(0, 0, 0, 0deg);
-moz-transform: rotate3d(0, 0, 0, 0deg);
-ms-transform: rotate3d(0, 0, 0, 0deg);
-o-transform: rotate3d(0, 0, 0, 0deg);
transform: rotate3d(0, 0, 0, 0deg);
}
100% {
-webkit-transform: rotate3d(0, 1, 0, 720deg);
-moz-transform: rotate3d(0, 1, 0, 720deg);
-ms-transform: rotate3d(0, 1, 0, 720deg);
-o-transform: rotate3d(0, 1, 0, 720deg);
transform: rotate3d(0, 1, 0, 720deg);
}
}
@keyframes rotating {
0% {
-webkit-transform: rotate3d(0, 0, 0, 0deg);
-moz-transform: rotate3d(0, 0, 0, 0deg);
-ms-transform: rotate3d(0, 0, 0, 0deg);
-o-transform: rotate3d(0, 0, 0, 0deg);
transform: rotate3d(0, 0, 0, 0deg);
}
100% {
-webkit-transform: rotate3d(0, 1, 0, 720deg);
-moz-transform: rotate3d(0, 1, 0, 720deg);
-ms-transform: rotate3d(0, 1, 0, 720deg);
-o-transform: rotate3d(0, 1, 0, 720deg);
transform: rotate3d(0, 1, 0, 720deg);
}
}
@-webkit-keyframes rotatingY {
100% {
-webkit-transform: rotateY(-360deg);
-moz-transform: rotateY(-360deg);
-ms-transform: rotateY(-360deg);
-o-transform: rotateY(-360deg);
transform: rotateY(-360deg);
}
}
@-moz-keyframes rotatingY {
100% {
-webkit-transform: rotateY(-360deg);
-moz-transform: rotateY(-360deg);
-ms-transform: rotateY(-360deg);
-o-transform: rotateY(-360deg);
transform: rotateY(-360deg);
}
}
@-ms-keyframes rotatingY {
100% {
-webkit-transform: rotateY(-360deg);
-moz-transform: rotateY(-360deg);
-ms-transform: rotateY(-360deg);
-o-transform: rotateY(-360deg);
transform: rotateY(-360deg);
}
}
@-o-keyframes rotatingY {
100% {
-webkit-transform: rotateY(-360deg);
-moz-transform: rotateY(-360deg);
-ms-transform: rotateY(-360deg);
-o-transform: rotateY(-360deg);
transform: rotateY(-360deg);
}
}
@keyframes rotatingY {
100% {
-webkit-transform: rotateY(-360deg);
-moz-transform: rotateY(-360deg);
-ms-transform: rotateY(-360deg);
-o-transform: rotateY(-360deg);
transform: rotateY(-360deg);
}
}
/**/
@-webkit-keyframes fluttering {
0%, 25%, 50%, 75%, 100% {
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
10%, 60% {
-webkit-transform: translate3d(0, 150px, 0);
-moz-transform: translate3d(0, 150px, 0);
-ms-transform: translate3d(0, 150px, 0);
-o-transform: translate3d(0, 150px, 0);
transform: translate3d(0, 150px, 0);
}
30%, 80% {
-webkit-transform: translate3d(0, 50px, 0);
-moz-transform: translate3d(0, 50px, 0);
-ms-transform: translate3d(0, 50px, 0);
-o-transform: translate3d(0, 50px, 0);
transform: translate3d(0, 50px, 0);
}
}
@-moz-keyframes fluttering {
0%, 25%, 50%, 75%, 100% {
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
10%, 60% {
-webkit-transform: translate3d(0, 150px, 0);
-moz-transform: translate3d(0, 150px, 0);
-ms-transform: translate3d(0, 150px, 0);
-o-transform: translate3d(0, 150px, 0);
transform: translate3d(0, 150px, 0);
}
30%, 80% {
-webkit-transform: translate3d(0, 50px, 0);
-moz-transform: translate3d(0, 50px, 0);
-ms-transform: translate3d(0, 50px, 0);
-o-transform: translate3d(0, 50px, 0);
transform: translate3d(0, 50px, 0);
}
}
@-ms-keyframes fluttering {
0%, 25%, 50%, 75%, 100% {
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
10%, 60% {
-webkit-transform: translate3d(0, 150px, 0);
-moz-transform: translate3d(0, 150px, 0);
-ms-transform: translate3d(0, 150px, 0);
-o-transform: translate3d(0, 150px, 0);
transform: translate3d(0, 150px, 0);
}
30%, 80% {
-webkit-transform: translate3d(0, 50px, 0);
-moz-transform: translate3d(0, 50px, 0);
-ms-transform: translate3d(0, 50px, 0);
-o-transform: translate3d(0, 50px, 0);
transform: translate3d(0, 50px, 0);
}
}
@-o-keyframes fluttering {
0%, 25%, 50%, 75%, 100% {
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
10%, 60% {
-webkit-transform: translate3d(0, 150px, 0);
-moz-transform: translate3d(0, 150px, 0);
-ms-transform: translate3d(0, 150px, 0);
-o-transform: translate3d(0, 150px, 0);
transform: translate3d(0, 150px, 0);
}
30%, 80% {
-webkit-transform: translate3d(0, 50px, 0);
-moz-transform: translate3d(0, 50px, 0);
-ms-transform: translate3d(0, 50px, 0);
-o-transform: translate3d(0, 50px, 0);
transform: translate3d(0, 50px, 0);
}
}
@keyframes fluttering {
0%, 25%, 50%, 75%, 100% {
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
10%, 60% {
-webkit-transform: translate3d(0, 150px, 0);
-moz-transform: translate3d(0, 150px, 0);
-ms-transform: translate3d(0, 150px, 0);
-o-transform: translate3d(0, 150px, 0);
transform: translate3d(0, 150px, 0);
}
30%, 80% {
-webkit-transform: translate3d(0, 50px, 0);
-moz-transform: translate3d(0, 50px, 0);
-ms-transform: translate3d(0, 50px, 0);
-o-transform: translate3d(0, 50px, 0);
transform: translate3d(0, 50px, 0);
}
}
/**/
@-webkit-keyframes left-wing-flap {
0% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
}
50% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
}
100% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
}
}
@-moz-keyframes left-wing-flap {
0% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
}
50% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
}
100% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
}
}
@-ms-keyframes left-wing-flap {
0% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
}
50% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
}
100% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
}
}
@-o-keyframes left-wing-flap {
0% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
}
50% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
}
100% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
}
}
@keyframes left-wing-flap {
0% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
}
50% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, -70deg);
}
100% {
-webkit-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(1) rotate3d(0, 1, 0, 60deg);
}
}
@-webkit-keyframes right-wing-flap {
0% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
}
50% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
}
100% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
}
}
@-moz-keyframes right-wing-flap {
0% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
}
50% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
}
100% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
}
}
@-ms-keyframes right-wing-flap {
0% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
}
50% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
}
100% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
}
}
@-o-keyframes right-wing-flap {
0% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
}
50% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
}
100% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
}
}
@keyframes right-wing-flap {
0% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
}
50% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, -70deg);
}
100% {
-webkit-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-moz-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-ms-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
-o-transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
transform: translate3d(0, 0, 0) scaleX(-1) rotate3d(0, 1, 0, 60deg);
}
}
/**
*/
/**
- SOURCE
*/
body {
width: 100%;
height: 100%;
overflow: hidden;
}
.background {
position: absolute;
width: 100%;
height: 100%;
}
.scene3d {
-webkit-perspective: 1000px;
-moz-perspective: 1000px;
-ms-perspective: 1000px;
-o-perspective: 1000px;
perspective: 1000px;
-webkit-perspective-origin: 50% 50%;
-moz-perspective-origin: 50% 50%;
-ms-perspective-origin: 50% 50%;
-o-perspective-origin: 50% 50%;
perspective-origin: 50% 50%;
position: absolute;
width: 100%;
height: 100%;
-webkit-transform-style: preserve-3d;
-moz-transform-style: preserve-3d;
-ms-transform-style: preserve-3d;
-o-transform-style: preserve-3d;
transform-style: preserve-3d;
}
.skybox.cube {
position: absolute;
left: 50%;
top: 50%;
width: 512px;
height: 512px;
margin-left: -256px;
margin-top: -256px;
-webkit-perspective-origin: 50% 50%;
-moz-perspective-origin: 50% 50%;
-ms-perspective-origin: 50% 50%;
-o-perspective-origin: 50% 50%;
perspective-origin: 50% 50%;
-webkit-transform-style: preserve-3d;
-moz-transform-style: preserve-3d;
-ms-transform-style: preserve-3d;
-o-transform-style: preserve-3d;
transform-style: preserve-3d;
-webkit-animation: rotatingY 40s linear infinite;
-moz-animation: rotatingY 40s linear infinite;
-ms-animation: rotatingY 40s linear infinite;
-o-animation: rotatingY 40s linear infinite;
animation: rotatingY 40s linear infinite;
}
.skybox.cube var.scale {
position: absolute;
left: 50%;
top: 50%;
width: 512px;
height: 512px;
margin-left: -256px;
margin-top: -256px;
-webkit-perspective-origin: 50% 50%;
-moz-perspective-origin: 50% 50%;
-ms-perspective-origin: 50% 50%;
-o-perspective-origin: 50% 50%;
perspective-origin: 50% 50%;
-webkit-transform-style: preserve-3d;
-moz-transform-style: preserve-3d;
-ms-transform-style: preserve-3d;
-o-transform-style: preserve-3d;
transform-style: preserve-3d;
-webkit-transform: rotate3d(0, 0, 1, 15deg) translate3d(0, 100px, 0) scale3d(4, 6, 4);
-moz-transform: rotate3d(0, 0, 1, 15deg) translate3d(0, 100px, 0) scale3d(4, 6, 4);
-ms-transform: rotate3d(0, 0, 1, 15deg) translate3d(0, 100px, 0) scale3d(4, 6, 4);
-o-transform: rotate3d(0, 0, 1, 15deg) translate3d(0, 100px, 0) scale3d(4, 6, 4);
transform: rotate3d(0, 0, 1, 15deg) translate3d(0, 100px, 0) scale3d(4, 6, 4);
}
.skybox.cube .face {
position: absolute;
left: 50%;
top: 50%;
width: 512px;
height: 512px;
margin-left: -256px;
margin-top: -256px;
-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
-ms-backface-visibility: hidden;
-o-backface-visibility: hidden;
backface-visibility: hidden;
}
.skybox.cube .face.front {
-webkit-transform: rotateY(0deg) translateZ(-256px);
-moz-transform: rotateY(0deg) translateZ(-256px);
-ms-transform: rotateY(0deg) translateZ(-256px);
-o-transform: rotateY(0deg) translateZ(-256px);
transform: rotateY(0deg) translateZ(-256px);
background-image: url(“https://s3-us-west-2.amazonaws.com/s.cdpn.io/78881/clouds_front.jpg”);
}
.skybox.cube .face.back {
-webkit-transform: rotateY(180deg) translateZ(-256px);
-moz-transform: rotateY(180deg) translateZ(-256px);
-ms-transform: rotateY(180deg) translateZ(-256px);
-o-transform: rotateY(180deg) translateZ(-256px);
transform: rotateY(180deg) translateZ(-256px);
background-image: url(“https://s3-us-west-2.amazonaws.com/s.cdpn.io/78881/clouds_back.jpg”);
}
.skybox.cube .face.right {
-webkit-transform: rotateY(-90deg) translateZ(-256px);
-moz-transform: rotateY(-90deg) translateZ(-256px);
-ms-transform: rotateY(-90deg) translateZ(-256px);
-o-transform: rotateY(-90deg) translateZ(-256px);
transform: rotateY(-90deg) translateZ(-256px);
background-image: url(“https://s3-us-west-2.amazonaws.com/s.cdpn.io/78881/clouds_right.jpg”);
}
.skybox.cube .face.left {
-webkit-transform: rotateY(90deg) translateZ(-256px);
-moz-transform: rotateY(90deg) translateZ(-256px);
-ms-transform: rotateY(90deg) translateZ(-256px);
-o-transform: rotateY(90deg) translateZ(-256px);
transform: rotateY(90deg) translateZ(-256px);
background-image: url(“https://s3-us-west-2.amazonaws.com/s.cdpn.io/78881/clouds_left.jpg”);
}
.skybox.cube .face.top {
-webkit-transform: rotateX(-90deg) translateZ(-256px);
-moz-transform: rotateX(-90deg) translateZ(-256px);
-ms-transform: rotateX(-90deg) translateZ(-256px);
-o-transform: rotateX(-90deg) translateZ(-256px);
transform: rotateX(-90deg) translateZ(-256px);
background-image: url(“https://s3-us-west-2.amazonaws.com/s.cdpn.io/78881/clouds_top.jpg”);
}
.skybox.cube .face.bottom {
-webkit-transform: rotateX(90deg) translateZ(-256px);
-moz-transform: rotateX(90deg) translateZ(-256px);
-ms-transform: rotateX(90deg) translateZ(-256px);
-o-transform: rotateX(90deg) translateZ(-256px);
transform: rotateX(90deg) translateZ(-256px);
background-image: url(“https://s3-us-west-2.amazonaws.com/s.cdpn.io/78881/hazy_lake_top.jpg”);
background: none;
}
.butterfly_container {
position: absolute;
left: 50%;
top: 50%;
width: 100px;
height: 100px;
margin-left: -50px;
margin-top: -50px;
-webkit-transform-origin: 50% 50%;
-moz-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
-o-transform-origin: 50% 50%;
transform-origin: 50% 50%;
-webkit-transform-style: preserve-3d;
-moz-transform-style: preserve-3d;
-ms-transform-style: preserve-3d;
-o-transform-style: preserve-3d;
transform-style: preserve-3d;
-webkit-animation: rotatingY 10s linear infinite;
-moz-animation: rotatingY 10s linear infinite;
-ms-animation: rotatingY 10s linear infinite;
-o-animation: rotatingY 10s linear infinite;
animation: rotatingY 10s linear infinite;
}
.butterfly_container var {
position: absolute;
left: 50%;
top: 50%;
width: 100px;
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

总结一下这三次面试下来我的经验是:
-
一定不要死记硬背,要理解原理,否则面试官一深入就会露馅!
-
代码能力一定要注重,尤其是很多原理性的代码(之前两次让我写过Node中间件,Promise.all,双向绑定原理,被虐的怀疑人生)!
-
尽量从面试官的问题中表现自己知识的深度与广度,让面试官发现你的闪光点!
-
多刷面经!
我把所有遇到的面试题都做了一个整理,并且阅读了很多大牛的博客之后写了解析,免费分享给大家,算是一个感恩回馈吧,有需要的朋友【点击我】获取。祝大家早日拿到自己心怡的工作!
篇幅有限,仅展示部分内容
-o-animation: rotatingY 10s linear infinite;
animation: rotatingY 10s linear infinite;
}
.butterfly_container var {
position: absolute;
left: 50%;
top: 50%;
width: 100px;
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
[外链图片转存中…(img-RELM5ugP-1712555835688)]
[外链图片转存中…(img-pQmvAjba-1712555835689)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
[外链图片转存中…(img-FPikFtIU-1712555835689)]
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

总结一下这三次面试下来我的经验是:
-
一定不要死记硬背,要理解原理,否则面试官一深入就会露馅!
-
代码能力一定要注重,尤其是很多原理性的代码(之前两次让我写过Node中间件,Promise.all,双向绑定原理,被虐的怀疑人生)!
-
尽量从面试官的问题中表现自己知识的深度与广度,让面试官发现你的闪光点!
-
多刷面经!
我把所有遇到的面试题都做了一个整理,并且阅读了很多大牛的博客之后写了解析,免费分享给大家,算是一个感恩回馈吧,有需要的朋友【点击我】获取。祝大家早日拿到自己心怡的工作!
篇幅有限,仅展示部分内容