围绕中心css3旋转图像

时间:2014-04-07 09:17:50

标签: css rotation center

我试图围绕它的中心旋转一个世界 - 但似乎无法以正确的方式旋转它(围绕它自己的中心轴)

很难解释所以我做了一个小提琴,你可以......摆弄。

http://jsfiddle.net/FQwYJ/

和我的css

.world
{
-webkit-animation: spin1 2s infinite linear;
-moz-animation: spin1 2s infinite linear;
-o-animation: spin1 2s infinite linear;
-ms-animation: spin1 2s infinite linear;
animation: spin1 2s infinite linear;
}

@-webkit-keyframes spin1 {
0% { -webkit-transform: rotate(0deg);}
100% { -webkit-transform: rotate(360deg);}
}
@-moz-keyframes spin1 {
0% { -moz-transform: rotate(0deg);}
100% { -moz-transform: rotate(360deg);}
}
@-o-keyframes spin1 {
0% { -o-transform: rotate(0deg);}
100% { -o-transform: rotate(360deg);}
}
@-ms-keyframes spin1 {
0% { -ms-transform: rotate(0deg);}
100% { -ms-transform: rotate(360deg);}
}
@-keyframes spin1 {
0% { transform: rotate(0deg);}
100% { transform: rotate(360deg);}
} 

感谢您的帮助(工作帮助将归功于最终实验)

3 个答案:

答案 0 :(得分:23)

您需要设置元素的大小并指定transform-origin属性

-webkit-transform-origin: 50% 50%;
-moz-transform-origin: 50% 50%;
-o-transform-origin: 50% 50%;
transform-origin: 50% 50%;
width: 256px;
height: 256px;

示例小提琴:http://jsfiddle.net/RbXRM/3/

答案 1 :(得分:12)

您不限制div的大小。

实际上你根本不需要div,你只需将类应用于图像:

JSfiddle Demo

<img class="world" src="http://upload.wikimedia.org/wikipedia/commons/thumb/e/ef/Erioll_world_2.svg/256px-Erioll_world_2.svg.png"/>

答案 2 :(得分:1)

你只需要旋转img

.world img
{
-webkit-animation: spin1 2s infinite linear;
-moz-animation: spin1 2s infinite linear;
-o-animation: spin1 2s infinite linear;
-ms-animation: spin1 2s infinite linear;
animation: spin1 2s infinite linear;
}

或修改div.world的显示,使其it shrinks显示在图片上(inline-block,inline-table,table)甚至float