Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.03.2014, 19:54
Кандидат Javascript-наук
Отправить личное сообщение для FanAizu Посмотреть профиль Найти все сообщения от FanAizu
 
Регистрация: 08.03.2011
Сообщений: 148

Начало анимации с места предыдущей анимации
Использую css анимацию, а именно свойство animation. В нем указаны две анимации.
<style>
			#girls
			{
				position:relative;
				top:0;
				left:0;
				-webkit-animation:girls-move1 2s 0s forwards linear, girls-move2 2s 4s forwards linear;
				-o-animation:girls-move1 2s 0s forwards linear, girls-move2 2s 4s forwards linear;
				-moz-animation:girls-move1 2s 0s forwards linear, girls-move2 2s 4s forwards linear;
				animation:girls-move1 2s 0s forwards linear, girls-move2 2s 4s forwards linear;
			}
			
			@-o-keyframes girls-move1
			{
				100% 
				{
					top:100px;
				}
			}
			@-webkit-keyframes girls-move1
			{
				100% 
				{
					top:100px;
				}
			}
			@-moz-keyframes girls-move1
			{
				100% 
				{
					top:100px;
				}
			}
			@keyframes girls-move1
			{
				100% 
				{
					top:100px;
				}
			}
			
			
			
			@-o-keyframes girls-move2
			{
				100% 
				{
					top:200px;
				}
			}
			@-webkit-keyframes girls-move2
			{
				100% 
				{
					top:200px;
				}
			}
			@-moz-keyframes girls-move2
			{
				100% 
				{
					top:200px;
				}
			}
			@keyframes girls-move2
			{
				100% 
				{
					top:200px;
				}
			}
		</style>

Обе анимации работают со свойством top. Проблема возникает, когда заканчивается первая анимация и начинается вторая. Поидее после окончания первой анимации значение свойства top должно быть 100px и вторая анимация должна делать переход от 100px к 200px, но на практике во время начала второй анимации происходит скачок к top:0px и от этого значения происходит переход к 200px. Почему так происходит и как заставить браузер использовать значение top, полученное после окончания первой анимации?
Ответить с цитированием
  #2 (permalink)  
Старый 20.03.2014, 20:30
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

FanAizu,
а самому вписать это значение?
Ответить с цитированием
  #3 (permalink)  
Старый 20.03.2014, 20:34
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

FanAizu,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  @-o-keyframes girls-move1{
    100%{
      top:100px;
    }
  }

  @-webkit-keyframes girls-move1{
    100%{
      top:100px;
    }
  }

  @-moz-keyframes girls-move1{
    100%{
      top:100px;
    }
  }

  @keyframes girls-move1{
    100%{
      top:100px;
    }
  }

  @-o-keyframes girls-move2{
    0%{
      top:100px;
    }

    100%{
      top:200px;
    }
  }

  @-webkit-keyframes girls-move2{
    0%{
      top:100px;
    }

    100%{
      top:200px;
    }
  }

  @-moz-keyframes girls-move2{
    0%{
      top:100px;
    }

    100%{
      top:200px;
    }
  }

  @keyframes girls-move2{
    0%{
      top:100px;
    }

    100%{
      top:200px;
    }
  }

  #girls{
    position:relative;
    top:0;
    left:0;
    -webkit-animation:girls-move1 2s 0s forwards linear,girls-move2 2s 4s forwards linear;
    -o-animation:girls-move1 2s 0s forwards linear,girls-move2 2s 4s forwards linear;
    -moz-animation:girls-move1 2s 0s forwards linear,girls-move2 2s 4s forwards linear;
    animation:girls-move1 2s 0s forwards linear,girls-move2 2s 4s forwards linear;
  }
  </style>


</head>

<body>
  <img src="http://file.mobilmusic.ru/3f/e4/92/944517-160.jpg" alt="" id="girls">
</body>

</html>
Ответить с цитированием
  #4 (permalink)  
Старый 21.03.2014, 12:39
Кандидат Javascript-наук
Отправить личное сообщение для FanAizu Посмотреть профиль Найти все сообщения от FanAizu
 
Регистрация: 08.03.2011
Сообщений: 148

Сообщение от рони Посмотреть сообщение
FanAizu,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  @-o-keyframes girls-move1{
    100%{
      top:100px;
    }
  }

  @-webkit-keyframes girls-move1{
    100%{
      top:100px;
    }
  }

  @-moz-keyframes girls-move1{
    100%{
      top:100px;
    }
  }

  @keyframes girls-move1{
    100%{
      top:100px;
    }
  }

  @-o-keyframes girls-move2{
    0%{
      top:100px;
    }

    100%{
      top:200px;
    }
  }

  @-webkit-keyframes girls-move2{
    0%{
      top:100px;
    }

    100%{
      top:200px;
    }
  }

  @-moz-keyframes girls-move2{
    0%{
      top:100px;
    }

    100%{
      top:200px;
    }
  }

  @keyframes girls-move2{
    0%{
      top:100px;
    }

    100%{
      top:200px;
    }
  }

  #girls{
    position:relative;
    top:0;
    left:0;
    -webkit-animation:girls-move1 2s 0s forwards linear,girls-move2 2s 4s forwards linear;
    -o-animation:girls-move1 2s 0s forwards linear,girls-move2 2s 4s forwards linear;
    -moz-animation:girls-move1 2s 0s forwards linear,girls-move2 2s 4s forwards linear;
    animation:girls-move1 2s 0s forwards linear,girls-move2 2s 4s forwards linear;
  }
  </style>


</head>

<body>
  <img src="http://file.mobilmusic.ru/3f/e4/92/944517-160.jpg" alt="" id="girls">
</body>

</html>
да, про такой вариант я знаю, спасибо. но хотелось бы не задавать во второй анимацие в 0% кадре значение top, мне нужно, чтобы значение top после первой анимации сохранялось у элемента. Можно ли этого как-то добиться?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск