2015-06-12 5 views
2

Я пробовал вращаться и раздвигаться отдельно, и они отлично работают. Но когда я их совмещаю, у них есть неудобная комбинация.Как вращаться и вращаться в css?

http://jsfiddle.net/62RJc/268/

img{ 

    border-radius:50%; 
    -webkit-transition: -webkit-transform .8s ease-in-out; 
    -ms-transition: -ms-transform .8s ease-in-out; 
    transition: transform .8s ease-in-out; 
} 
+1

Что значит «неудобно» ... что вы ожидаете. –

+0

было много мерцания, но @Aramil Rey, похоже, решил это –

ответ

2

Its, потому что вы используете KeyFrame, вы можете добиться этого с преобразованием в одиночку.

Взгляните на это: (Кроме того, парящий в IMG, а его перемещение не является легкой задачей)

img{ 
 
    border-radius:50%;  
 
    -webkit-transition: -webkit-transform .8s ease-in-out; 
 
    -ms-transition: -ms-transform .8s ease-in-out; 
 
    transition: transform .8s ease-in-out;  
 
} 
 

 
button:hover + img { 
 
    position: relative; 
 
    transform: translateX(200px) rotate(360deg); 
 
}
<button>Animate!</button> 
 
<img src="http://lorempixel.com/output/nature-q-c-100-100-9.jpg"/>

Чтобы сделать пребывание изображения, где после того, как анимация закончилась: 1) Удалить button:hover + img {} из CSS 2) Добавить JS

JQuery:

$('button').click(function() { 
    $('img').css('transform', 'translate(200px) rotate(360deg)'); 
}); 

JS Fiddle - Элемент не возвращается в исходное положение!

+0

спасибо большое –

+0

есть ли вообще остановить его от вращения назад? –

+0

Вы добавляете CSS к элементу только при запуске кнопки «button: hover», вы должны постоянно добавлять эти стили с помощью JS, чтобы изображение оставалось там, где было после анимации. –

Смежные вопросы