반응형
CSS3 회전 애니메이션
<img class="image" src="" alt="" width="120" height="120">
이 애니메이션 이미지를 작동시킬 수 없습니다. 360도 회전해야 합니다.
아래 CSS가 가만히 있어서 뭔가 잘못된 것 같습니다.
.image {
float: left;
margin: 0 auto;
position: absolute;
top: 50%;
left: 50%;
width: 120px;
height: 120px;
margin-top: -60px;
margin-left: -60px;
-webkit-animation-name: spin;
-webkit-animation-duration: 4000ms;
-webkit-animation-iteration-count: infinite;
-webkit-animation-timing-function: linear;
-moz-animation-name: spin;
-moz-animation-duration: 4000ms;
-moz-animation-iteration-count: infinite;
-moz-animation-timing-function: linear;
-ms-animation-name: spin;
-ms-animation-duration: 4000ms;
-ms-animation-iteration-count: infinite;
-ms-animation-timing-function: linear;
animation-name: spin;
animation-duration: 4000ms;
animation-iteration-count: infinite;
animation-timing-function: linear;
@-ms-keyframes spin {
from {
-ms-transform: rotate(0deg);
} to {
-ms-transform: rotate(360deg);
}
}
@-moz-keyframes spin {
from {
-moz-transform: rotate(0deg);
} to {
-moz-transform: rotate(360deg);
}
}
@-webkit-keyframes spin {
from {
-webkit-transform: rotate(0deg);
} to {
-webkit-transform: rotate(360deg);
}
}
@keyframes spin {
from {
transform: rotate(0deg);
} to {
transform: rotate(360deg);
}
}
}
여기 데모가 있습니다.올바른 애니메이션 CSS:
.image {
position: absolute;
top: 50%;
left: 50%;
width: 120px;
height: 120px;
margin:-60px 0 0 -60px;
-webkit-animation:spin 4s linear infinite;
-moz-animation:spin 4s linear infinite;
animation:spin 4s linear infinite;
}
@-moz-keyframes spin {
100% { -moz-transform: rotate(360deg); }
}
@-webkit-keyframes spin {
100% { -webkit-transform: rotate(360deg); }
}
@keyframes spin {
100% {
-webkit-transform: rotate(360deg);
transform:rotate(360deg);
}
}
<img class="image" src="https://i.stack.imgur.com/pC1Tv.jpg" alt="" width="120" height="120">
코드에 대한 참고 사항:
- 키 프레임을 내부에 중첩했습니다.
.image
규칙, 그리고 그것은 틀렸습니다. float:left
절대적으로 위치한 요소에서는 작동하지 않습니다.- 캐니우스를 살펴봅니다.IE10은 다음이 필요하지 않습니다.
-ms-
접두어
360도 회전을 달성하기 위한 작업 솔루션이 여기 있습니다.
HTML:
<img class="image" src="your-image.png">
CSS:
.image {
overflow: hidden;
transition-duration: 0.8s;
transition-property: transform;
}
.image:hover {
transform: rotate(360deg);
-webkit-transform: rotate(360deg);
}
이미지 위를 맴돌면 360도 회전 효과를 얻을 수 있습니다.
PS: 추가-webkit-
크롬 및 기타 웹킷 브라우저에서 작동할 수 있는 확장입니다.웹킷의 업데이트된 피들은 여기에서 확인할 수 있습니다.
나는 당신과 같은 것을 사용하여 회전하는 이미지를 가지고 있습니다.
.knoop1 img{
position:absolute;
width:114px;
height:114px;
top:400px;
margin:0 auto;
margin-left:-195px;
z-index:0;
-webkit-transition-duration: 0.8s;
-moz-transition-duration: 0.8s;
-o-transition-duration: 0.8s;
transition-duration: 0.8s;
-webkit-transition-property: -webkit-transform;
-moz-transition-property: -moz-transform;
-o-transition-property: -o-transform;
transition-property: transform;
overflow:hidden;
}
.knoop1:hover img{
-webkit-transform:rotate(360deg);
-moz-transform:rotate(360deg);
-o-transform:rotate(360deg);
}
이것을 쉽게 해보세요.
.btn-circle span {
top: 0;
position: absolute;
font-size: 18px;
text-align: center;
text-decoration: none;
-webkit-animation:spin 4s linear infinite;
-moz-animation:spin 4s linear infinite;
animation:spin 4s linear infinite;
}
.btn-circle span :hover {
color :silver;
}
/* rotate 360 key for refresh btn */
@-moz-keyframes spin { 100% { -moz-transform: rotate(360deg); } }
@-webkit-keyframes spin { 100% { -webkit-transform: rotate(360deg); } }
@keyframes spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } }
<button type="button" class="btn btn-success btn-circle" ><span class="glyphicon">↻</span></button>
이미지를 뒤집으려면 사용할 수 있습니다.
.image{
width: 100%;
-webkit-animation:spin 3s linear infinite;
-moz-animation:spin 3s linear infinite;
animation:spin 3s linear infinite;
}
@-moz-keyframes spin { 50% { -moz-transform: rotateY(90deg); } }
@-webkit-keyframes spin { 50% { -webkit-transform: rotateY(90deg); } }
@keyframes spin { 50% { -webkit-transform: rotateY(90deg); transform:rotateY(90deg); } }
CSS3를 사용하여 백그라운드에서 객체를 회전시키는 또 다른 방법은 아래의 CSS3 코드를 확인하십시오.
.floating-ball-model-3 > span {
animation-name: floating-ball-model-3;
animation-duration: 7s;
animation-iteration-count: infinite;
animation-timing-function: linear;
-webkit-animation-name: floating-ball-model-3;
-webkit-animation-duration: 7s;
-webkit-animation-iteration-count: infinite;
-webkit-animation-timing-function: linear;
-moz-animation-name: floating-ball-model-3;
-moz-animation-duration: 7s;
-moz-animation-iteration-count: infinite;
-moz-animation-timing-function: linear;
-ms-animation-name: floating-ball-model-3;
-ms-animation-duration: 7s;
-ms-animation-iteration-count: infinite;
-ms-animation-timing-function: linear;
-o-animation-name: floating-ball-model-3;
-o-animation-duration: 7s;
-o-animation-iteration-count: infinite;
-o-animation-timing-function: linear;
}
@keyframes floating-ball-model-3 {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
여기 이것이 당신을 도울 것입니다.
아래 jsfiddle 링크는 이미지 회전 방법을 이해하는 데 도움이 됩니다.저는 시계의 다이얼을 돌리기 위해 같은 것을 사용했습니다.
var rotation = function (){
$("#image").rotate({
angle:0,
animateTo:360,
callback: rotation,
easing: function (x,t,b,c,d){
return c*(t/d)+b;
}
});
}
rotation();
위치: • t: 현재 시간,
b: begInnIng 값,
c: 값 변경,
d: 지속 시간,
x: 사용되지 않음
완화 없음(선형 완화): 함수(x, t, b, c, d) { 반환 b+(t/d)*c ; }
언급URL : https://stackoverflow.com/questions/16771225/css3-rotate-animation
반응형
'IT' 카테고리의 다른 글
각도 반전 2 *ng의 경우 (0) | 2023.08.11 |
---|---|
입력 유형="숫자"에 대한 변경 이벤트 (0) | 2023.08.11 |
PowerShell의 모든 사이트 및 바인딩 표시 (0) | 2023.08.11 |
Angular 4와 함께 jQuery 플러그인을 사용하는 방법은 무엇입니까? (0) | 2023.08.11 |
jQuery - 해시 변경 이벤트 (0) | 2023.08.11 |