CSS transitions shaking in chrome and IE - html

I am new to developing, can anyone please help me with this.. css transitions are shaking in chrome and IE, I have tried all possible styling to correct it, but could'nt. please help!.
here is the fiddle
https://jsfiddle.net/Khan_Z/qoL4xqhq/
<header>
<h2 id="head1"><span>Sometimes </span><span>you win </span> <span>sometimes</span> <span>you learn</span></h2>
<div>
<h2 id="head2" class="subtitle fancy"><span>Hi</span></h2>
<h2 id="head3" >ABCD</h2>
<p id="head4">UVWXYZ:)</p>
</div>
#head1{
width:100%;
margin-top:375px ;
font-size:40px;
text-align:center;
position:absolute;
}
#head2{
position:absolute;
font-size:42px;
margin-top:450px;
text-align:center;
margin-left:47%;
}
#head3{
position:absolute;
margin-top:460px;
margin-left:43%;
font-size:40px;
line-height:2;
text-align:center;
}
#head4{
position:absolute;
margin-top:510px;
margin-left:40%;
font-size:35px;
text-align:center;
}
#head1{
-webkit-animation: none;
-moz-animation: none;
-ms-animation:none;
animation: none;
color: #fff;
text-shadow: 0px 0px 1px #CCCCCC;
}
#head1 span {
-webkit-animation: blurFadeIn 1s ease-in 0s backwards;
-moz-animation: blurFadeIn 1s ease-in 0s backwards;
-ms-animation: blurFadeIn 1s ease-in 0s backwards;
animation: blurFadeIn 1s ease-in 0s backwards;
color: black;
text-shadow: 0px 0px 1px #CCCCCC;
}
#head1 span:nth-child(2) {
-webkit-animation-delay: 1s;
-moz-animation-delay: 1s;
animation-delay: 1s;
}
#head1 span:nth-child(3) {
-webkit-animation-delay: 2s;
-moz-animation-delay: 2s;
animation-delay: 2s;
}
#head1 span:nth-child(4) {
-webkit-animation-delay: 3s;
-moz-animation-delay: 3s;
animation-delay: 3s;
}
#head2 {
-webkit-animation: blurFadeIn 1s ease-in 0s backwards;
-moz-animation: blurFadeIn 1s ease-in 0s backwards;
-ms-animation: blurFadeIn 1s ease-in 0s backwards;
animation: blurFadeIn 1s ease-in 0s backwards;
color:black;
text-shadow: 0px 0px 1px #CCCCCC;
}
#head2 {
-webkit-animation-delay: 5s;
-moz-animation-delay: 5s;
-ms-animation-delay:5s;
animation-delay: 5s;
}
#head3 {
-webkit-animation: blurFadeIn 1s ease-in 0s backwards;
-moz-animation: blurFadeIn 1s ease-in 0s backwards;
-ms-animation: blurFadeIn 1s ease-in 0s backwards;
animation: blurFadeIn 1s ease-in 0s backwards;
color: black;
text-shadow: 0px 0px 1px #CCCCCC;
}
#head3 {
-webkit-animation-delay: 5s;
-moz-animation-delay: 5s;
-ms-animation-delay:5s;
animation-delay: 5s;
}
#head4{
-webkit-animation: blurFadeIn 1s ease-in 0s backwards;
-moz-animation: blurFadeIn 1s ease-in 0s backwards;
-ms-animation: blurFadeIn 1s ease-in 0s backwards;
animation: blurFadeIn 1s ease-in 0s backwards;
color: black;
text-shadow: 0px 0px 1px #CCCCCC;
}
#head4 {
-webkit-animation-delay: 6s;
-moz-animation-delay: 6s;
-ms-animation-delay:6s;
animation-delay: 6s;
}
#-webkit-keyframes blurFadeInOut{
0%{
opacity: 0;
text-shadow: 0px 0px 40px #fff;
-webkit-backface-visibility:hidden;
-webkit-transform: scale(1.3);
transform: scale(1.3);
}
20%,75%{
opacity: 1;
text-shadow: 0px 0px 1px #fff;
-webkit-backface-visibility:hidden;
-webkit-transform: scale(1);
transform: scale(1);
}
100%{
opacity: 0;
text-shadow: 0px 0px 50px #fff;
-webkit-backface-visibility:hidden;
-webkit-transform: scale(0);
transform: scale(0);
}
}
#-webkit-keyframes blurFadeIn{
0%{
opacity: 0;
text-shadow: 0px 0px 40px #fff;
-webkit-backface-visibility:hidden;
-webkit-transform:scale(1.3);
transform: scale(1.3);
}
50%{
opacity: 0.5;
text-shadow: 0px 0px 10px #fff;
-webkit-backface-visibility:hidden;
-webkit-transform: scale(1.1);
transform: scale(1.1);
}
100%{
opacity: 1;
text-shadow: 0px 0px 1px #fff;
-webkit-backface-visibility:hidden;
-webkit-transform: scale(1);
transform: scale(1);
}
}
#-webkit-keyframes fadeInBack{
0%{
opacity: 0;
-webkit-backface-visibility:hidden;
-webkit-transform: scale(0);
transform: scale(0);
}
50%{
opacity: 0.4;
-webkit-transform: scale(2);
-webkit-backface-visibility:hidden;
-webkit-transform:scale(2);
transform: scale(2);
}
100%{
opacity: 0.2;
-webkit-backface-visibility:hidden;
-webkit-transform:scale(5);
transform: scale(5);
}
}
#-webkit-keyframes fadeInRotate{
0%{
opacity: 0;
-webkit-transform: scale(0) rotate(360deg);
transform: scale(0);
-webkit-backface-visibility:hidden;
-webkit-transform: scale(0) ;
}
100%{
opacity: 1;
-webkit-transform: scale(1) rotate(-0deg);
transform: scale(1);
-webkit-backface-visibility:hidden;
-webkit-transform: scale(1);
}
}

instead of margin-top use top and use % instead of px on top it will be fine

Related

Css loop animation

I have a problem with the animation, where the words should iterate 'n' number of times
The above mentioned code has 9 different words which has a fade in and out animation one after the other, but this animation is only once . What i need is the loop iterates again and again with the same animation , as the last word ends the first should be loaded.
Here is the html/css code:
h1.main,p.demos {
-webkit-animation-delay: 18s;
-moz-animation-delay: 18s;
-ms-animation-delay: 18s;
animation-delay: 18s;
}
.sp-container {
position: relative;
top: 0px;
left: 0px;
width: 100%;
height: 100%;
z-index: 0;
background: -webkit-radial-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.3) 35%, rgba(0, 0, 0, 0.7));
background: -moz-radial-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.3) 35%, rgba(0, 0, 0, 0.7));
background: -ms-radial-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.3) 35%, rgba(0, 0, 0, 0.7));
background: radial-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.3) 35%, rgba(0, 0, 0, 0.7));
}
.sp-content {
position: absolute;
width: 100%;
height: 100%;
left: 0px;
top: 0px;
z-index: 1000;
}
.sp-container h2 {
position: absolute;
top: 50%;
line-height: 100px;
height: 90px;
margin-top: -50px;
font-size: 90px;
width: 100%;
text-align: center;
color: transparent;
-webkit-animation: blurFadeInOut 3s ease-in backwards;
-moz-animation: blurFadeInOut 3s ease-in backwards;
-ms-animation: blurFadeInOut 3s ease-in backwards;
animation: blurFadeInOut 3s ease-in backwards;
}
.sp-container h2.frame-6 {
-webkit-animation-delay:0s;
-moz-animation-delay: 0s;
-ms-animation-delay: 0s;
animation-delay: 0s;
}
.sp-container h2.frame-1 {
-webkit-animation-delay: 3s;
-moz-animation-delay: 3s;
-ms-animation-delay: 3s;
animation-delay: 3s;
}
.sp-container h2.frame-2 {
-webkit-animation-delay: 6s;
-moz-animation-delay: 6s;
-ms-animation-delay: 6s;
animation-delay: 6s;
}
.sp-container h2.frame-3 {
-webkit-animation-delay: 9s;
-moz-animation-delay: 9s;
-ms-animation-delay: 9s;
animation-delay: 9s;
}
.sp-container h2.frame-4 {
font-size: 200px;
-webkit-animation-delay: 12s;
-moz-animation-delay: 12s;
-ms-animation-delay: 12s;
animation-delay: 12s;
}
.sp-container h2.frame-7 {
font-size: 200px;
-webkit-animation-delay: 15s;
-moz-animation-delay: 15s;
-ms-animation-delay: 15s;
animation-delay: 15s;
}
.sp-container h2.frame-8 {
font-size: 200px;
-webkit-animation-delay: 18s;
-moz-animation-delay: 18s;
-ms-animation-delay: 18s;
animation-delay: 18s;
}
.sp-container h2.frame-9 {
font-size: 200px;
-webkit-animation-delay: 21s;
-moz-animation-delay: 21s;
-ms-animation-delay: 21s;
animation-delay: 21s;
}
.sp-container h2.frame-5 {
font-size: 200px;
-webkit-animation-delay: 24s;
-moz-animation-delay: 24s;
-ms-animation-delay: 24s;
animation-delay: 24s;
}
/* .sp-container h2.frame-5 span {
-webkit-animation: blurFadeIn 3s ease-in 12s backwards;
-moz-animation: blurFadeIn 1s ease-in 12s backwards;
-ms-animation: blurFadeIn 3s ease-in 12s backwards;
animation: blurFadeIn 3s ease-in 12s backwards;
color: transparent;
text-shadow: 0px 0px 1px #fff;
} */
.sp-container h2.frame-5 span:nth-child(2) {
-webkit-animation-delay: 13s;
-moz-animation-delay: 13s;
-ms-animation-delay: 13s;
animation-delay: 13s;
}
.sp-container h2.frame-5 span:nth-child(3) {
-webkit-animation-delay: 14s;
-moz-animation-delay: 14s;
-ms-animation-delay: 14s;
animation-delay: 14s;
}
.sp-globe {
position: absolute;
width: 282px;
height: 273px;
left: 50%;
top: 50%;
margin: -137px 0 0 -141px;
background: transparent url(http://web-sonick.zz.mu/images/sl/globe.png) no-repeat top left;
-webkit-animation: fadeInBack 3.6s linear 14s backwards;
-moz-animation: fadeInBack 3.6s linear 14s backwards;
-ms-animation: fadeInBack 3.6s linear 14s backwards;
animation: fadeInBack 3.6s linear 14s backwards;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
filter: alpha(opacity=30);
opacity: 0.3;
-webkit-transform: scale(5);
-moz-transform: scale(5);
-o-transform: scale(5);
-ms-transform: scale(5);
transform: scale(5);
}
.sp-circle-link {
position: absolute;
left: 50%;
bottom: 100px;
margin-left: -50px;
text-align: center;
line-height: 100px;
width: 100px;
height: 100px;
background: #fff;
color: #3f1616;
font-size: 25px;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
border-radius: 50%;
-webkit-animation: fadeInRotate 1s linear 16s backwards;
-moz-animation: fadeInRotate 1s linear 16s backwards;
-ms-animation: fadeInRotate 1s linear 16s backwards;
animation: fadeInRotate 1s linear 16s backwards;
-webkit-transform: scale(1) rotate(0deg);
-moz-transform: scale(1) rotate(0deg);
-o-transform: scale(1) rotate(0deg);
-ms-transform: scale(1) rotate(0deg);
transform: scale(1) rotate(0deg);
}
.sp-circle-link:hover {
background: #85373b;
color: #fff;
}
/**/
#-webkit-keyframes blurFadeInOut{
0%{
opacity: 0;
text-shadow: 0px 0px 40px #fff;
-webkit-transform: scale(1.3);
}
20%,75%{
opacity: 1;
text-shadow: 0px 0px 1px #fff;
-webkit-transform: scale(1);
}
100%{
opacity: 0;
text-shadow: 0px 0px 50px #fff;
-webkit-transform: scale(0);
}
}
#-webkit-keyframes blurFadeIn{
0%{
opacity: 0;
text-shadow: 0px 0px 40px #fff;
-webkit-transform: scale(1.3);
}
50%{
opacity: 0.5;
text-shadow: 0px 0px 10px #fff;
-webkit-transform: scale(1.1);
}
100%{
opacity: 1;
text-shadow: 0px 0px 1px #fff;
-webkit-transform: scale(1);
}
}
#-webkit-keyframes fadeInBack{
0%{
opacity: 0;
-webkit-transform: scale(0);
}
50%{
opacity: 0.4;
-webkit-transform: scale(2);
}
100%{
opacity: 0.2;
-webkit-transform: scale(5);
}
}
#-webkit-keyframes fadeInRotate{
0%{
opacity: 0;
-webkit-transform: scale(0) rotate(360deg);
}
100%{
opacity: 1;
-webkit-transform: scale(1) rotate(0deg);
}
}
/**/
#-moz-keyframes blurFadeInOut{
0%{
opacity: 0;
text-shadow: 0px 0px 40px #fff;
-moz-transform: scale(1.3);
}
20%,75%{
opacity: 1;
text-shadow: 0px 0px 1px #fff;
-moz-transform: scale(1);
}
100%{
opacity: 0;
text-shadow: 0px 0px 50px #fff;
-moz-transform: scale(0);
}
}
#-moz-keyframes blurFadeIn{
0%{
opacity: 0;
text-shadow: 0px 0px 40px #fff;
-moz-transform: scale(1.3);
}
100%{
opacity: 1;
text-shadow: 0px 0px 1px #fff;
-moz-transform: scale(1);
}
}
#-moz-keyframes fadeInBack{
0%{
opacity: 0;
-moz-transform: scale(0);
}
50%{
opacity: 0.4;
-moz-transform: scale(2);
}
100%{
opacity: 0.2;
-moz-transform: scale(5);
}
}
#-moz-keyframes fadeInRotate{
0%{
opacity: 0;
-moz-transform: scale(0) rotate(360deg);
}
100%{
opacity: 1;
-moz-transform: scale(1) rotate(0deg);
}
}
/**/
#keyframes blurFadeInOut{
0%{
opacity: 0;
text-shadow: 0px 0px 40px #fff;
transform: scale(1.3);
}
20%,75%{
opacity: 1;
text-shadow: 0px 0px 1px #fff;
transform: scale(1);
}
100%{
opacity: 0;
text-shadow: 0px 0px 50px #fff;
transform: scale(0);
}
}
#keyframes blurFadeIn{
0%{
opacity: 0;
text-shadow: 0px 0px 40px #fff;
transform: scale(1.3);
}
50%{
opacity: 0.5;
text-shadow: 0px 0px 10px #fff;
transform: scale(1.1);
}
100%{
opacity: 1;
text-shadow: 0px 0px 1px #fff;
transform: scale(1);
}
}
#keyframes fadeInBack{
0%{
opacity: 0;
transform: scale(0);
}
50%{
opacity: 0.4;
transform: scale(2);
}
100%{
opacity: 0.2;
transform: scale(5);
}
}
#keyframes fadeInRotate{
0%{
opacity: 0;
transform: scale(0) rotate(360deg);
}
100%{
opacity: 1;
transform: scale(1) rotate(0deg);
}
}
<div class="container">
<div class="header">
<div class="clr"></div>
</div>
<div class="sp-container">
<div class="sp-content">
<div class="sp-globe"></div>
<h2 style="font-size:75px;font-family:bold;" class="frame-6"><span>WE </span> <span>STAND </span> <span>FOR</span></h2>
<h2 style="font-size:68px;" class="frame-1">INNOVATION</h2>
<h2 style="font-size:68px;" class="frame-2">QUALITY</h2>
<h2 style="font-size:68px;" class="frame-3">RELIABILITY</h2>
<h2 style="font-size:68px;" class="frame-4">SAFETY</h2>
<h2 style="font-size:68px;" class="frame-7">VALUES</h2>
<h2 style="font-size:68px;" class="frame-8">HARMONY</h2>
<h2 style="font-size:68px;" class="frame-9">UNITY</h2>
<h2 style="font-size:75px;font-family:bold;" class="frame-5"><span>CUSTOMER</span> </h2>
</div>
</div>
</div>
I don't really understand your code, but what you can do is to create an animation for each element and define the same duration for each element of the animation (the total animation time).
After that, you just have to handle "what is displayed when" using %
In my example, I will handle 4 elements, so 25% of the total time for each one (and +/-5% for fadeIn fadeOut)
.el-1, .el-2, .el-3, .el-4 {
position: absolute;
width: 100px;
height: 100px;
animation-duration: 10s; /* Total time */
animation-iteration-count: infinite;
animation-delay: 0; /* by default */
}
.el-1 {
animation-name: example-1;
background: red;
}
.el-2 {
animation-name: example-2;
background: green;
}
.el-3 {
animation-name: example-3;
background: blue;
}
.el-4 {
animation-name: example-4;
background: yellow;
}
#keyframes example-1 {
0% {opacity: 0;}
5% {opacity: 1;}
20% {opacity: 1;}
30% {opacity: 0;}
100% {opacity: 0;}
}
#keyframes example-2 {
0% {opacity: 0;}
20% {opacity: 0;}
30% {opacity: 1;}
40% {opacity: 1;}
60% {opacity: 0;}
100% {opacity: 0;}
}
#keyframes example-3 {
0% {opacity: 0;}
40% {opacity: 0;}
60% {opacity: 1;}
70% {opacity: 1;}
80% {opacity: 0;}
100% {opacity: 0;}
}
#keyframes example-4 {
0% {opacity: 0;}
70% {opacity: 0;}
80% {opacity: 1;}
95% {opacity: 1;}
100% {opacity: 0;}
}
<div class="el-1">1</div>
<div class="el-2">2</div>
<div class="el-3">3</div>
<div class="el-4">4</div>

floating effect for text

I want to apply floating effect to some texts. I tried it using marquee.
.bounce {
height: 50px;
overflow: hidden;
position: relative;
}
.bounce p {
position: absolute;
width: 50%;
margin: 0;
line-height: 50px;
text-align: center;
color: #FFF;
opacity: 0.7;
-moz-transform: translateX(50%);
-webkit-transform: translateX(50%);
transform: translateX(50%);
-moz-animation: bouncing-text 25s linear infinite alternate;
-webkit-animation: bouncing-text 25s linear infinite alternate;
animation: bouncing-text 25s linear infinite alternate;
}
#keyframes bouncing-text {
0% {
-moz-transform: translateX(50%);
-webkit-transform: translateX(50%);
transform: translateX(50%);
}
100% {
-moz-transform: translateX(-50%);
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
}
<div class="bounce">
<p>SOFT LANDSCAPING</p>
<br />
<p>HARD LANDSCAPING</p>
<br />
</div>
This is for bouncing. I want to make the text float like in the water.
Please help me to find a solution. If any other way please let me know.
You can achieve this using css3 animation-name property.
HTML:
<div class="floating">
Floating effect like water
</div>
CSS :
.floating {
-webkit-animation-name: Floatingx;
-webkit-animation-duration: 3s;
-webkit-animation-iteration-count: infinite;
-webkit-animation-timing-function: ease-in-out;
-moz-animation-name: Floating;
-moz-animation-duration: 3s;
-moz-animation-iteration-count: infinite;
-moz-animation-timing-function: ease-in-out;
margin-left: 30px;
margin-top: 5px;
}
#-webkit-keyframes Floatingx {
from {-webkit-transform:translate(0, 0px);}
65% {-webkit-transform:translate(0, 15px);}
to {-webkit-transform: translate(0, -0px);}
}
#-moz-keyframes Floating {
from {-moz-transform:translate(0, 0px);}
65% {-moz-transform:translate(0, 15px);}
to {-moz-transform: translate(0, -0px);}
}
Here is working fiddle.
For more on how animation-name works, check this out : animate-name property.
You could do it with hover.css. You have to use the code from the :hover selector and add it to the element's style itself to make it work.
.hvr-bob {
-webkit-animation-name: hvr-bob-float, hvr-bob;
animation-name: hvr-bob-float, hvr-bob;
-webkit-animation-duration: .3s, 1.5s;
animation-duration: .3s, 1.5s;
-webkit-animation-delay: 0s, .3s;
animation-delay: 0s, .3s;
-webkit-animation-timing-function: ease-out, ease-in-out;
animation-timing-function: ease-out, ease-in-out;
-webkit-animation-iteration-count: 1, infinite;
animation-iteration-count: 1, infinite;
-webkit-animation-fill-mode: forwards;
animation-fill-mode: forwards;
-webkit-animation-direction: normal, alternate;
animation-direction: normal, alternate;
}
Check the JSFiddle. Don't forget to add hover.css / hover-min.css.

How to make css animation start on click of button

Hi can anyone help me with this tiny thing i don't know how but i want to start animation on a click of button not auto on startup.
h2 {
font-size: 20px;
animation: blurFadeInOut 3s ease-in backwards;
}
h3 {
font-size: 20px;
animation: blurFadeIn 3s ease-in backwards;
}
h2, h3 {
position: absolute;
top: 0;
height: 100%;
margin-top: 0;
width: 100%;
margin-left: 0;
line-height: 69px;
text-align: center;
font-family: "Cedarville Cursive";
color: black;
}
h2.frame-6, h3.frame-1 {
-webkit-animation-delay: 0s;
animation-delay: 0s;
}
h2.frame-7, h3.frame-1 {
-webkit-animation-delay: 11s;
animation-delay: 11s;
}
h2.frame-1, h3.frame-1 {
-webkit-animation-delay: 14s;
animation-delay: 14s;
}
h2.frame-2, h3.frame-2 {
-webkit-animation-delay: 17s;
animation-delay: 17s;
}
h2.frame-3, h3.frame-3 {
-webkit-animation-delay: 20s;
animation-delay: 20s;
}
h2.frame-4, h3.frame-4 {
-webkit-animation-delay: 23s;
animation-delay: 23s;
}
h2.frame-5, h3.frame-5 {
-webkit-animation: none;
animation: none;
}
h2.frame-5 span, h3.frame-5 span {
-webkit-animation: blurFadeIn 2s ease-in 12s backwards;
animation: blurFadeIn 2s ease-in 12s backwards;
color: transparent;
text-shadow: 0px 0px 1px #fff;
}
#-webkit-keyframes blurFadeInOut{
0%{
opacity: 0;
text-shadow: 0px 0px 40px #fff;
transform: scale(1.3);
}
20%,75%{
opacity: 1;
text-shadow: 0px 0px 1px #fff;
transform: scale(1);
}
100%{
opacity: 0;
text-shadow: 0px 0px 50px #fff;
transform: scale(0);
}
}
#-webkit-keyframes blurFadeIn{
0%{
opacity: 0;
text-shadow: 0px 0px 40px #fff;
transform: scale(1.3);
}
50%{
opacity: 0.5;
text-shadow: 0px 0px 10px #fff;
transform: scale(1.1);
}
100%{
opacity: 1;
text-shadow: 0px 0px 1px #fff;
transform: scale(1);
}
}
enter code here
<center><h2 class='frame-6'>Because today is a special day, sending birthday wishes simply wouldn’t do, so I’m sending you a day when all of your dreams come true, and a year that means the most to you!</h2></center>
<center><h2 class='frame-7'>Let's sing together!</h2></center>
<center><h2 class='frame-1'>Happy Birthday Too You</h2></center>
<center> <h2 class='frame-2'>Happy Birthday Too You</h2></center>
<center> <h2 class='frame-3'>Happy Birthday Dear Demo</h2></center>
<center> <h2 class='frame-4'>Happy Birthday Toooo Youuuu</h2></center>
<h3 class='frame-5'><span><h2 class='frame-3'>Wish You A Verry Happy Birthday Demo </h2></span></h3>

Animation not working in mozilla

this codepen works in google chrome but it is not working in mozilla firefox.
CodePen Demo
<svg version="1.1" id="svg_snowman" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
y="0px" width="286px" height="380px" viewBox="0 0 286 380" enable-background="new 0 0 286 380" xml:space="preserve">
<g id="snowman">
<path class="snowman_body" d="M20.302,221.826c-6.899,83.792,106.271,110.246,149.672,47.643
C236.041,174.189,29.782,107.401,20.302,221.826z"/>
<path class="scarf" d="M62.978,157.992c-5.486,2.424-8.756,6.673-7.191,13.735
c1.887,8.643,12.927,16.689,20.227,20.237c18.053,8.676,44.348,8.364,61.527-3.758c29.854-21.115-24.191-30.144-37.011-31.832
C92.905,155.356,73.691,153.215,62.978,157.992z"/>
<path class="scarf_knot" d="M88.509,177.525c-18.559,6.252-29.452,33.552-28.112,51.221
c0.11,0.106,0.256,0.247,0.365,0.353c8.537-1.302,15,3.198,22.443,6.22c-0.542-15.985,0.146-31.726,13.332-43.214
c0.143-0.106,0.143-0.106,0,0c-4.759,8.534-6.463,21.221-6.463,30.845c6.247-2.494,13.292-3.97,19.828-1.826
c-1.124-12.893-1.924-27.72,8.281-37.698c-4.831-2.986-10.494-5.587-16.126-6.641L88.509,177.525z"/>
<path class="snowman_head" d="M145.783,120.573c-2.77-5.274-6.473-9.863-11.039-13.207
c-2.725-2.003-5.629-3.761-8.606-5.304C72.5,78.667,53.571,129.255,53.534,129.323c-2.471,8.272-2.59,17.065,0.24,25.173
c1.245,3.568,3.056,7.005,5.499,10.204c16.309,21.327,54.842,28.984,77.794,12.79C153.694,165.722,155.441,138.96,145.783,120.573z
"/>
<g id="hat">
<path class="hat-ribbon" d="M45.071,104.135l6.829,12.61c34.1-33.933,65.013-19.442,65.013-19.442l-1.961-14.935
C90.037,83.282,65.447,89.325,45.071,104.135z"/>
<path class="hat-top" d="M112.882,63.362c0,0-8.829-9.698-36.575-5.148C37.661,64.555,35.338,85.67,35.338,85.67l9.733,18.465
c20.376-14.81,44.966-20.853,69.881-21.766L112.882,63.362z"/>
<path class="hat-bottom" d="M53.534,129.075c0.036-0.068,25.632-34.575,72.603-27.137c2.978,1.543,5.882,3.363,8.606,5.366
c4.566,3.344,8.269,7.964,11.039,13.238c9.431-9.731,8.321-22.45-4.971-27.139c-20.632-7.306-44.275-2.84-64.322,4.855
c-16.056,6.149-33.525,18.058-36.938,35.628C37.229,145.866,42.802,151,53.768,154h0.006
C50.945,146,51.063,137.347,53.534,129.075z"/>
</g>
<path class="nose" d="M104.781,143.55c-1.708,18.2,27.856,10.402,38.028,9.453c7.191-0.669,13.764-1.581,20.483-2.495
c6.539-0.845,6.792-2.953,0.545-5.095c-7.264-2.53-14.02-5.127-22.008-8.219c-7.048-2.707-21.612-6.956-29.092-5.059
C108.523,133.19,105.436,136.455,104.781,143.55z"/>
<path class="mouth-1" d="M84.079,158.94c-0.91,0.492-2.034,0.106-2.506-0.842c-0.439-0.913,0.036-1.932,0.98-2.321
c0.944-0.421,2.034,0,2.433,0.878C85.422,157.465,84.986,158.519,84.079,158.94z"/>
<path class="mouth-2" d="M88.292,164.63c-0.691,0.739-2.034,0.881-2.651-0.036c-0.688-0.878-0.582-2.07,0.292-2.633
c0.834-0.527,1.961-0.457,2.502,0.212C88.874,162.945,88.984,163.893,88.292,164.63z"/>
<path class="mouth-3" d="M94.43,168.426c-0.472,0.88-1.635,1.263-2.579,0.81c-1.017-0.353-1.236-1.652-0.654-2.462
c0.581-0.842,1.562-0.984,2.469-0.701C94.54,166.458,94.865,167.513,94.43,168.426z"/>
<path class="mouth-4" d="M101.222,170.849c-0.256,0.948-1.309,1.511-2.326,1.266c-1.017-0.283-1.559-1.231-1.163-2.215
c0.329-0.913,1.382-1.475,2.289-1.231C100.967,168.882,101.478,169.866,101.222,170.849z"/>
<path class="mouth-5" d="M108.376,172.151c-0.109,0.984-1.053,1.72-2.107,1.578c-1.053-0.106-1.741-0.983-1.525-2.002
c0.18-0.913,1.126-1.649,2.07-1.543C107.795,170.254,108.486,171.167,108.376,172.151z"/>
<path class="mouth-6" d="M115.64,172.36c0.036,1.019-0.761,1.864-1.814,1.935c-1.053,0.103-1.891-0.739-1.817-1.793
c0.036-0.948,0.837-1.758,1.817-1.829C114.77,170.602,115.568,171.376,115.64,172.36z"/>
<path class="mouth-7" d="M122.831,171.412c0.256,0.948-0.399,1.967-1.452,2.212c-1.017,0.318-1.964-0.418-2.107-1.437
c-0.109-0.983,0.545-1.829,1.452-2.109C121.632,169.83,122.576,170.463,122.831,171.412z"/>
<path class="mouth-8" d="M129.587,168.953c0.508,0.878,0.146,2.002-0.837,2.494c-0.907,0.598-2.034,0.035-2.393-0.913
c-0.329-0.948,0.107-1.864,0.871-2.388C128.025,167.722,129.115,168.075,129.587,168.953z"/>
<path class="mouth-9" d="M135.252,164.665c0.798,0.669,0.834,1.864,0.073,2.671c-0.761,0.81-1.888,0.775-2.542-0.103
c-0.545-0.739-0.545-1.932,0-2.568C133.402,163.999,134.491,164.035,135.252,164.665z"/>
<path class="mouth-10" d="M138.994,158.763c0.944,0.318,1.416,1.408,1.017,2.426c-0.399,1.019-1.452,1.369-2.323,0.842
c-0.874-0.527-1.346-1.617-1.053-2.426C136.961,158.763,138.014,158.413,138.994,158.763z"/>
<path class="eye_left" d="M94.939,125.986c4.396-2.494,0.581-8.746-3.775-6.535
C86.585,121.769,90.037,128.76,94.939,125.986z"/>
<path class="eye_right" d="M127.663,123.63c4.393-2.456,0.582-8.746-3.778-6.497
C119.309,119.451,122.758,126.407,127.663,123.63z"/>
<path class="button_top" d="M134.053,227.38c13.039-2.391,12.205-20.626-2.323-18.904
C116.767,210.306,119.891,229.978,134.053,227.38z"/>
<path class="button_bottom" d="M130.022,262.687c11.696,1.157,17.289-16.336,5.267-19.219
C123.522,240.659,115.205,261.176,130.022,262.687z"/>
</g>
</svg>
Can someone point me as to why is it not working in mozilla?
You are missing the standard syntax without prefixes, that's why doesn't work on non--webkit- browsers that don't require prefixes.
Browser support for animation and transform
Updated CodePen
.snowman_body {
fill: #F5ECC3;
-webkit-animation: body-drop 0.5s ease-in forwards;
animation: body-drop 0.5s ease-in forwards;
}
.scarf {
fill: #EF3C3C;
opacity: 0;
-webkit-animation: scale 0.5s ease 1s forwards;
animation: scale 0.5s ease 1s forwards;
-webkit-transform-origin: 55px 165px;
animation: scale 0.5s ease 1s forwards;
}
.scarf_knot {
fill: #EF3C3C;
opacity: 0;
-webkit-animation: scale 0.3s ease 1.5s forwards;
animation: scale 0.3s ease 1.5s forwards;
-webkit-transform-origin: 92px 190px;
transform-origin: 92px 190px;
}
.snowman_head {
fill: #F5ECC3;
-webkit-transform: translateY(-303px);
transform: translateY(-303px);
-webkit-animation: body-drop 0.5s ease-in 0.2s forwards;
animation: body-drop 0.5s ease-in 0.2s forwards;
}
#hat {
-webkit-transform: translateY(-303px);
transform: translateY(-303px);
-webkit-animation: body-drop 0.5s ease-in 0.3s forwards;
animation: body-drop 0.5s ease-in 0.3s forwards;
}
.hat-top {
fill: #5B4831;
}
.hat-ribbon {
fill: #EF3C3C;
}
.hat-bottom {
fill: #5B4831;
}
.nose {
fill: #EF3C3C;
opacity: 0;
-webkit-animation: scale 0.3s ease 2.5s forwards;
animation: scale 0.3s ease 2.5s forwards;
-webkit-transform-origin: 104px 142px;
transform-origin: 104px 142px;
}
.mouth-1 {
fill: #5B4831;
opacity: 0;
-webkit-animation: scale 0.1s ease 3.1s forwards;
animation: scale 0.1s ease 3.1s forwards;
-webkit-transform-origin: 82px 156px;
transform-origin: 82px 156px;
}
.mouth-2 {
fill: #5B4831;
opacity: 0;
-webkit-animation: scale 0.1s ease 3.2s forwards;
animation: scale 0.1s ease 3.2s forwards;
-webkit-transform-origin: 86px 162px;
transform-origin: 86px 162px;
}
.mouth-3 {
fill: #5B4831;
opacity: 0;
-webkit-animation: scale 0.1s ease 3.3s forwards;
animation: scale 0.1s ease 3.3s forwards;
-webkit-transform-origin: 92px 167px;
transform-origin: 92px 167px;
}
.mouth-4 {
fill: #5B4831;
opacity: 0;
-webkit-animation: scale 0.1s ease 3.4s forwards;
animation: scale 0.1s ease 3.4s forwards;
-webkit-transform-origin: 98px 169px;
transform-origin: 98px 169px;
}
.mouth-5 {
fill: #5B4831;
opacity: 0;
-webkit-animation: scale 0.1s ease 3.5s forwards;
animation: scale 0.1s ease 3.5s forwards;
-webkit-transform-origin: 106px 171px;
transform-origin: 106px 171px;
}
.mouth-6 {
fill: #5B4831;
opacity: 0;
-webkit-animation: scale 0.1s ease 3.6s forwards;
nimation: scale 0.1s ease 3.6s forwards;
-webkit-transform-origin: 113px 171px;
transform-origin: 113px 171px;
}
.mouth-7 {
fill: #5B4831;
opacity: 0;
-webkit-animation: scale 0.1s ease 3.7s forwards;
animation: scale 0.1s ease 3.7s forwards;
-webkit-transform-origin: 120px 171px;
transform-origin: 120px 171px;
}
.mouth-8 {
fill: #5B4831;
opacity: 0;
-webkit-animation: scale 0.1s ease 3.8s forwards;
animation: scale 0.1s ease 3.8s forwards;
-webkit-transform-origin: 127px 169px;
transform-origin: 127px 169px;
}
.mouth-9 {
fill: #5B4831;
opacity: 0;
-webkit-animation: scale 0.1s ease 3.9s forwards;
animation: scale 0.1s ease 3.9s forwards;
-webkit-transform-origin: 132px 165px;
transform-origin: 132px 165px;
}
.mouth-10 {
fill: #5B4831;
opacity: 0;
-webkit-animation: scale 0.1s ease 4.0s forwards;
animation: scale 0.1s ease 4.0s forwards;
-webkit-transform-origin: 137px 160px;
transform-origin: 137px 160px;
}
.eye_left {
fill: #5B4831;
opacity: 0;
-webkit-animation: scale 0.2s ease 2.7s forwards;
animation: scale 0.2s ease 2.7s forwards;
-webkit-transform-origin: 92px 122px;
transform-origin: 92px 122px;
}
.eye_right {
fill: #5B4831;
opacity: 0;
-webkit-animation: scale 0.2s ease 2.9s forwards;
animation: scale 0.2s ease 2.9s forwards;
-webkit-transform-origin: 125px 120px;
transform-origin: 125px 120px;
}
.button_top {
fill: #09B0A6;
opacity: 0;
-webkit-animation: scale 0.3s ease 2.2s forwards;
animation: scale 0.3s ease 2.2s forwards;
-webkit-transform-origin: 132px 217px;
transform-origin: 132px 217px;
}
.button_bottom {
fill: #09B0A6;
opacity: 0;
-webkit-animation: scale 0.3s ease 2s forwards;
animation: scale 0.3s ease 2s forwards;
-webkit-transform-origin: 132px 252px;
transform-origin: 132px 252px;
}
#-webkit-keyframes body-drop {
0% {
transform: translateY(-303px);
}
100% {
transform: translateY(0px);
}
}
#keyframes body-drop {
0% {
transform: translateY(-303px);
}
100% {
transform: translateY(0px);
}
}
#-webkit-keyframes scale {
0% {
opacity: 1;
transform: scale(0, 0);
}
100% {
opacity: 1;
transform: scale(1, 1);
}
}
#keyframes scale {
0% {
opacity: 1;
transform: scale(0, 0);
}
100% {
opacity: 1;
transform: scale(1, 1);
}
}

webkit-animation is not working

<style>
.abc .abc-animation {
position: relative;
margin: 0 auto;
width: 632px;
height: 460px;
overflow: hidden;
background-position: 50% 50%;
background-repeat: no-repeat;
background-color: transparent;
background-image: url("http://zacharybrown.files.wordpress.com/2008/05/7-indians-chief.jpg");
}
.abc .ready .mouse {
-webkit-animation: mouseani 8s 0s 1 normal forwards, mousegone .1s 8s 1 normal forwards;
-moz-animation: mouseani 8s 0s 1 normal forwards, mousegone .1s 8s 1 normal forwards;
-ms-animation: mouseani 8s 0s 1 normal forwards, mousegone .1s 8s 1 normal forwards;
-o-animation: mouseani 8s 0s 1 normal forwards, mousegone .1s 8s 1 normal forwards;
animation: mouseani 8s 0s 1 normal forwards, mousegone .1s 8s 1 normal forwards;
-webkit-animation-timing-function: cubic-bezier(0.5, 0.05, 0 0.6, 1);
-moz-animation-timing-function: cubic-bezier(0.5, 0.05, 0 0.6, 1);
-o-animation-timing-function: cubic-bezier(0.5, 0.05, 0 0.6, 1);
-ms-animation-timing-function: cubic-bezier(0.5, 0.05, 0 0.6, 1);
animation-timing-function: cubic-bezier(0.5, 0.05, 0 0.6, 1);
}
.abc .mouse {
position: absolute;
left: -9px;
top: -9px;
z-index: 10;
display: inline-block;
opacity: 0;
width: 16px;
height: 16px;
background-color: #808080;
border-radius: 18px;
border: 2px solid #fff;
-webkit-transform: translate(150px, 105px);
-moz-transform: translate(150px, 105px);
-o-transform: translate(150px, 105px);
-ms-transform: translate(150px, 105px);
transform: translate(150px, 105px);
}
.abc .ready .mouse .click {
-webkit-animation: mouseclick 8s 0s 1 normal forwards;
-moz-animation: mouseclick 8s 0s 1 normal forwards;
-o-animation: mouseclick 8s 0s 1 normal forwards;
-ms-animation: mouseclick 8s 0s 1 normal forwards;
animation: mouseclick 8s 0s 1 normal forwards;
}
.abc .mouse .click {
display: inline-block;
opacity: 0;
width: 6px;
height: 6px;
background-color: #fff;
border-radius: 3px;
position: absolute;
left: 5px;
top: 5px;
}
.abc .ready .screen {
opacity: 0;
}
.abc .screen.one {
z-index: 5;
background-image: url("http://3.bp.blogspot.com/-2kEUWmGpQlw/T4m3TJnnxdI/AAAAAAAABWs/LrY8LwQwWMg/s1600/DA0087.jpg");
-webkit-transition-delay: 2s;
-moz-transition-delay: 2s;
-o-transition-delay: 2s;
-ms-transition-delay: 2s;
transition-delay: 2s;
}
.abc .screen {
width: 632px;
height: 460px;
background-position: 50% 50%;
background-repeat: no-repeat;
background-color: transparent;
position: absolute;
top: 0;
left: 0;
opacity: 1;
-webkit-transition: all 0.1s ease-in-out;
-moz-transition: all 0.1s ease-in-out;
-o-transition: all 0.1s ease-in-out;
-ms-transition: all 0.1s ease-in-out;
transition: all 0.1s ease-in-out;
}
.abc .screen.two {
z-index: 4;
background-image: url("http://cloud3.faout.com/uploads/201208/heditor/201208171536178403.jpg");
-webkit-transition-delay: 5s;
-moz-transition-delay: 5s;
-o-transition-delay: 5s;
-ms-transition-delay: 5s;
transition-delay: 5s;
}
.abc .screen.three {
z-index: 3;
background-image: url("http://blog.seattletimes.nwsource.com/seattlesketcher/linesmith-m.jpg");
-webkit-transition-delay: 8s;
-moz-transition-delay: 8s;
-o-transition-delay: 8s;
-ms-transition-delay: 8s;
transition-delay: 8s;
}
</style>
<article class="abc">
<div class="container clear">
<div class="abc-block browser">
<div class="browser-bar">
<div class="browser-button"></div>
<div class="browser-button"></div>
<div class="browser-button"></div>
</div>
<div class="browser-content">
<div class="abc-animation ready">
<div class="mouse"><span class="click"></span></div>
<div class="screen one"></div>
<div class="screen two"></div>
<div class="screen three"></div>
<div class="screen four"></div>
</div>
</div>
</div>
</div>
</article>
In above code i want to animate one circle dot which moves at three different place but it not working. so what's wrong in above code?
i know such a big code but i hope will get some good response and will be able to solve my problem.
You are missing keyframes, an at-rule that defines what your animation frames will be:
#keyframes mouseani {
0% { /* initial state */ }
/*
* intermediate states
*/
100% { /* final state */ }
}