Насколько я понимаю, нет такой вещи, которую мы могли бы реализовать с помощью CSS-переходов, но мы не можем реализовать с помощью CSS-анимаций, но не наоборот.
То есть любой переход имеет CSSанимационный эквивалент.Например, этот
.ablock:hover {
position: relative;
-moz-transition-property: background-color, color;
-moz-transition-duration: 1s;
-webkit-transition-property: background-color, color;
-webkit-transition-duration: 1s;
color: red;
background-color:pink;
}
эквивалентен следующему:
.ablock:hover {
-moz-animation-duration:1s;
-moz-animation-name:transition;
-webkit-animation-duration:1s;
-webkit-animation-name:transition;
}
@-moz-keyframes transition {
to {
color: red;
background-color: pink;
}
}
@-webkit-keyframes transition {
to {
color: red;
background-color: pink;
}
}
Мой вопрос: если мы говорим о браузере, поддерживающем как CSS-переходы, так и анимации, каковы варианты использования?за выбор того или иного подхода?Что касается переходов, я могу назвать только один - у них более лаконичный синтаксис, нам не нужно копировать и вставлять огромные фрагменты кода для @ -moz-keyframes, @ -webkit-keyframes и т. Д.
Что касается управления из javascript, анимации гибкости и сложности являются гораздо более подходящим инструментом (по крайней мере, на первый взгляд).Итак, каковы варианты использования?
UPD: ОК, позвольте мне попытаться перечислить интересную информацию, найденную в вопросах.
- Данный материал предоставлен Романом Комаровым.Скажем, у нас есть div и child div.Пока родительский div находится в переходе, мы переходим дочерний элемент.Как только мы убираем мышь, переход отменяется.Продолжительность этой отмены - это именно то время, которое мы уже потратили на переход.Анимация отменяется «немедленно».Тем не менее, я не знаю, насколько стандартны эти два поведения.