1. html
<div id="wrapper">
<section>
<p class="shake freez shake-hard">shake-hard</p>
</section>
<img class="shake shake-hard" src="img/1.png" alt="musica_byern" width="600">
</div>
2. css
#wrapper {
margin: 0 auto;
90%;
text-align: center;
}
#wrapper p {
font-family: helvetica;
font-weight: bold;
font-size: 80px;
color: red;
}
/* fn */
.shake {
display: inline-block;
-webkit-transform-origin: center center;
-ms-transform-origin: center center;
transform-origin: center center
}
.shake:hover {
-webkit-animation-name: shake-base;
-ms-animation-name: shake-base;
animation-name: shake-base;
-webkit-animation-duration: 100ms;
-ms-animation-duration: 100ms;
animation-duration: 100ms;
-webkit-animation-iteration-count: infinite;
-ms-animation-iteration-count: infinite;
animation-iteration-count: infinite;
-webkit-animation-timing-function: ease-in-out;
-ms-animation-timing-function: ease-in-out;
animation-timing-function: ease-in-out;
-webkit-animation-delay: 0s;
-ms-animation-delay: 0s;
animation-delay: 0s;
-webkit-animation-play-state: running;
-ms-animation-play-state: running;
animation-play-state: running
}
.shake.freez {
-webkit-animation-play-state: paused !important;
-ms-animation-play-state: paused !important;
animation-play-state: paused !important
}
.shake.freez.shake-hard {
-webkit-animation-name: shake-hard;
-ms-animation-name: shake-hard;
animation-name: shake-hard;
-webkit-animation-duration: 100ms;
-ms-animation-duration: 100ms;
animation-duration: 100ms;
-webkit-animation-iteration-count: infinite;
-ms-animation-iteration-count: infinite;
animation-iteration-count: infinite;
-webkit-animation-timing-function: ease-in-out;
-ms-animation-timing-function: ease-in-out;
animation-timing-function: ease-in-out;
-webkit-animation-delay: 0s;
-ms-animation-delay: 0s;
animation-delay: 0s;
-webkit-animation-play-state: running;
-ms-animation-play-state: running;
animation-play-state: running
}
@-webkit-keyframes shake-hard {
0% {
-webkit-transform: translate(0px, 0px) rotate(0deg)
}
2% {
-webkit-transform: translate(5px, -4px) rotate(-2.5deg)
}
4% {
-webkit-transform: translate(-10px, 5px) rotate(2.5deg)
}
6% {
-webkit-transform: translate(0px, 5px) rotate(-3.5deg)
}
8% {
-webkit-transform: translate(-6px, -10px) rotate(-1.5deg)
}
10% {
-webkit-transform: translate(2px, -7px) rotate(1.5deg)
}
12% {
-webkit-transform: translate(0px, 1px) rotate(0.5deg)
}
14% {
-webkit-transform: translate(7px, -9px) rotate(-0.5deg)
}
16% {
-webkit-transform: translate(-8px, 4px) rotate(-2.5deg)
}
18% {
-webkit-transform: translate(-9px, -4px) rotate(-0.5deg)
}
20% {
-webkit-transform: translate(-8px, -8px) rotate(0.5deg)
}
22% {
-webkit-transform: translate(-7px, 0px) rotate(-0.5deg)
}
24% {
-webkit-transform: translate(-10px, -5px) rotate(-3.5deg)
}
26% {
-webkit-transform: translate(1px, -10px) rotate(-0.5deg)
}
28% {
-webkit-transform: translate(5px, 2px) rotate(-1.5deg)
}
30% {
-webkit-transform: translate(-8px, 5px) rotate(-0.5deg)
}
32% {
-webkit-transform: translate(-4px, 2px) rotate(1.5deg)
}
34% {
-webkit-transform: translate(-9px, 8px) rotate(1.5deg)
}
36% {
-webkit-transform: translate(8px, -3px) rotate(1.5deg)
}
38% {
-webkit-transform: translate(-10px, 7px) rotate(-0.5deg)
}
40% {
-webkit-transform: translate(-7px, 1px) rotate(-3.5deg)
}
42% {
-webkit-transform: translate(-9px, 7px) rotate(0.5deg)
}
44% {
-webkit-transform: translate(4px, 2px) rotate(-3.5deg)
}
46% {
-webkit-transform: translate(8px, 4px) rotate(2.5deg)
}
48% {
-webkit-transform: translate(-5px, -1px) rotate(-2.5deg)
}
50% {
-webkit-transform: translate(-7px, 5px) rotate(-2.5deg)
}
52% {
-webkit-transform: translate(-1px, -7px) rotate(-3.5deg)
}
54% {
-webkit-transform: translate(-2px, -3px) rotate(0.5deg)
}
56% {
-webkit-transform: translate(-4px, -6px) rotate(-2.5deg)
}
58% {
-webkit-transform: translate(5px, 4px) rotate(-2.5deg)
}
60% {
-webkit-transform: translate(-3px, 2px) rotate(-0.5deg)
}
62% {
-webkit-transform: translate(-4px, -10px) rotate(-1.5deg)
}
64% {
-webkit-transform: translate(-4px, -9px) rotate(-2.5deg)
}
66% {
-webkit-transform: translate(3px, -8px) rotate(-1.5deg)
}
68% {
-webkit-transform: translate(-5px, -2px) rotate(0.5deg)
}
70% {
-webkit-transform: translate(-3px, -1px) rotate(-3.5deg)
}
72% {
-webkit-transform: translate(9px, -2px) rotate(0.5deg)
}
74% {
-webkit-transform: translate(7px, -6px) rotate(-2.5deg)
}
76% {
-webkit-transform: translate(1px, 2px) rotate(-1.5deg)
}
78% {
-webkit-transform: translate(-3px, -5px) rotate(-1.5deg)
}
80% {
-webkit-transform: translate(-5px, 3px) rotate(2.5deg)
}
82% {
-webkit-transform: translate(-2px, -1px) rotate(-3.5deg)
}
84% {
-webkit-transform: translate(-8px, 7px) rotate(0.5deg)
}
86% {
-webkit-transform: translate(-2px, 4px) rotate(-0.5deg)
}
88% {
-webkit-transform: translate(4px, 7px) rotate(-3.5deg)
}
90% {
-webkit-transform: translate(2px, 7px) rotate(0.5deg)
}
92% {
-webkit-transform: translate(-3px, 6px) rotate(-3.5deg)
}
94% {
-webkit-transform: translate(1px, 8px) rotate(1.5deg)
}
96% {
-webkit-transform: translate(-8px, -2px) rotate(1.5deg)
}
98% {
-webkit-transform: translate(-5px, 6px) rotate(0.5deg)
}
}
@-ms-keyframes shake-hard {
0% {
-ms-transform: translate(0px, 0px) rotate(0deg)
}
2% {
-ms-transform: translate(-1px, 3px) rotate(-1.5deg)
}
4% {
-ms-transform: translate(0px, -6px) rotate(2.5deg)
}
6% {
-ms-transform: translate(3px, 6px) rotate(-0.5deg)
}
8% {
-ms-transform: translate(-1px, -7px) rotate(0.5deg)
}
10% {
-ms-transform: translate(-3px, -2px) rotate(-2.5deg)
}
12% {
-ms-transform: translate(-6px, 7px) rotate(-3.5deg)
}
14% {
-ms-transform: translate(4px, -4px) rotate(1.5deg)
}
16% {
-ms-transform: translate(-1px, 4px) rotate(0.5deg)
}
18% {
-ms-transform: translate(2px, 9px) rotate(0.5deg)
}
20% {
-ms-transform: translate(-4px, -2px) rotate(0.5deg)
}
22% {
-ms-transform: translate(0px, 1px) rotate(0.5deg)
}
24% {
-ms-transform: translate(-2px, 0px) rotate(1.5deg)
}
26% {
-ms-transform: translate(3px, -2px) rotate(-3.5deg)
}
28% {
-ms-transform: translate(4px, -9px) rotate(-0.5deg)
}
30% {
-ms-transform: translate(6px, -7px) rotate(2.5deg)
}
32% {
-ms-transform: translate(6px, -9px) rotate(-2.5deg)
}
34% {
-ms-transform: translate(1px, 4px) rotate(-3.5deg)
}
36% {
-ms-transform: translate(7px, -5px) rotate(-0.5deg)
}
38% {
-ms-transform: translate(9px, -6px) rotate(-1.5deg)
}
40% {
-ms-transform: translate(-7px, 6px) rotate(2.5deg)
}
42% {
-ms-transform: translate(-8px, -9px) rotate(0.5deg)
}
44% {
-ms-transform: translate(-9px, -6px) rotate(1.5deg)
}
46% {
-ms-transform: translate(6px, 6px) rotate(-3.5deg)
}
48% {
-ms-transform: translate(-6px, 9px) rotate(-1.5deg)
}
50% {
-ms-transform: translate(8px, 1px) rotate(2.5deg)
}
52% {
-ms-transform: translate(-8px, 2px) rotate(-3.5deg)
}
54% {
-ms-transform: translate(3px, 3px) rotate(0.5deg)
}
56% {
-ms-transform: translate(-7px, -7px) rotate(0.5deg)
}
58% {
-ms-transform: translate(-6px, -5px) rotate(0.5deg)
}
60% {
-ms-transform: translate(-4px, 9px) rotate(-3.5deg)
}
62% {
-ms-transform: translate(-2px, -4px) rotate(-3.5deg)
}
64% {
-ms-transform: translate(9px, -2px) rotate(-3.5deg)
}
66% {
-ms-transform: translate(-4px, 0px) rotate(-0.5deg)
}
68% {
-ms-transform: translate(3px, -2px) rotate(-2.5deg)
}
70% {
-ms-transform: translate(6px, -6px) rotate(-3.5deg)
}
72% {
-ms-transform: translate(4px, -6px) rotate(-3.5deg)
}
74% {
-ms-transform: translate(1px, 7px) rotate(-0.5deg)
}
76% {
-ms-transform: translate(-2px, 8px) rotate(2.5deg)
}
78% {
-ms-transform: translate(2px, -2px) rotate(-1.5deg)
}
80% {
-ms-transform: translate(6px, 8px) rotate(0.5deg)
}
82% {
-ms-transform: translate(0px, 0px) rotate(-3.5deg)
}
84% {
-ms-transform: translate(-5px, -5px) rotate(-2.5deg)
}
86% {
-ms-transform: translate(-3px, 2px) rotate(2.5deg)
}
88% {
-ms-transform: translate(7px, -9px) rotate(-2.5deg)
}
90% {
-ms-transform: translate(5px, -5px) rotate(-3.5deg)
}
92% {
-ms-transform: translate(-2px, 8px) rotate(0.5deg)
}
94% {
-ms-transform: translate(-5px, -9px) rotate(-2.5deg)
}
96% {
-ms-transform: translate(8px, -9px) rotate(0.5deg)
}
98% {
-ms-transform: translate(-9px, 4px) rotate(1.5deg)
}
}
@keyframes shake-hard {
0% {
transform: translate(0px, 0px) rotate(0deg)
}
2% {
transform: translate(0px, 4px) rotate(0.5deg)
}
4% {
transform: translate(6px, -2px) rotate(-3.5deg)
}
6% {
transform: translate(-3px, -8px) rotate(-2.5deg)
}
8% {
transform: translate(-1px, 9px) rotate(2.5deg)
}
10% {
transform: translate(6px, 5px) rotate(-2.5deg)
}
12% {
transform: translate(-3px, 6px) rotate(-2.5deg)
}
14% {
transform: translate(-9px, 1px) rotate(-0.5deg)
}
16% {
transform: translate(-6px, 5px) rotate(2.5deg)
}
18% {
transform: translate(-9px, 8px) rotate(0.5deg)
}
20% {
transform: translate(-9px, 6px) rotate(-2.5deg)
}
22% {
transform: translate(-5px, 6px) rotate(0.5deg)
}
24% {
transform: translate(6px, 3px) rotate(1.5deg)
}
26% {
transform: translate(8px, -10px) rotate(-2.5deg)
}
28% {
transform: translate(0px, -5px) rotate(-3.5deg)
}
30% {
transform: translate(6px, -10px) rotate(2.5deg)
}
32% {
transform: translate(3px, 0px) rotate(-3.5deg)
}
34% {
transform: translate(4px, -6px) rotate(-3.5deg)
}
36% {
transform: translate(-5px, 4px) rotate(-0.5deg)
}
38% {
transform: translate(-7px, -6px) rotate(-1.5deg)
}
40% {
transform: translate(4px, -9px) rotate(-3.5deg)
}
42% {
transform: translate(-9px, -2px) rotate(-1.5deg)
}
44% {
transform: translate(0px, -3px) rotate(1.5deg)
}
46% {
transform: translate(-5px, -5px) rotate(-2.5deg)
}
48% {
transform: translate(-6px, 2px) rotate(-3.5deg)
}
50% {
transform: translate(0px, -5px) rotate(-1.5deg)
}
52% {
transform: translate(6px, 1px) rotate(-2.5deg)
}
54% {
transform: translate(9px, 6px) rotate(2.5deg)
}
56% {
transform: translate(-8px, -10px) rotate(-0.5deg)
}
58% {
transform: translate(6px, -2px) rotate(-1.5deg)
}
60% {
transform: translate(-4px, -8px) rotate(-1.5deg)
}
62% {
transform: translate(0px, -9px) rotate(0.5deg)
}
64% {
transform: translate(-7px, -6px) rotate(2.5deg)
}
66% {
transform: translate(8px, 6px) rotate(2.5deg)
}
68% {
transform: translate(-10px, -7px) rotate(-2.5deg)
}
70% {
transform: translate(-1px, 9px) rotate(-2.5deg)
}
72% {
transform: translate(-6px, 8px) rotate(-2.5deg)
}
74% {
transform: translate(2px, 5px) rotate(-1.5deg)
}
76% {
transform: translate(-7px, 6px) rotate(1.5deg)
}
78% {
transform: translate(3px, -9px) rotate(0.5deg)
}
80% {
transform: translate(-4px, -9px) rotate(-1.5deg)
}
82% {
transform: translate(0px, 7px) rotate(0.5deg)
}
84% {
transform: translate(-4px, -3px) rotate(-1.5deg)
}
86% {
transform: translate(-10px, 8px) rotate(-0.5deg)
}
88% {
transform: translate(-9px, 1px) rotate(-0.5deg)
}
90% {
transform: translate(-3px, 6px) rotate(1.5deg)
}
92% {
transform: translate(-8px, -10px) rotate(-3.5deg)
}
94% {
transform: translate(-8px, -7px) rotate(2.5deg)
}
96% {
transform: translate(-2px, 1px) rotate(2.5deg)
}
98% {
transform: translate(-3px, 4px) rotate(-2.5deg)
}
}