Jquery 在“上设置旋转动画”;CSS3“;
如果我在CSS3中有这一点(据我所知,这不是CSS3,只是特定于浏览器): HTML jQuery(仅用于管理框上的悬停)Jquery 在“上设置旋转动画”;CSS3“;,jquery,html,css,Jquery,Html,Css,如果我在CSS3中有这一点(据我所知,这不是CSS3,只是特定于浏览器): HTML jQuery(仅用于管理框上的悬停) 如何将动画设置为css旋转?我是说,不是一步一个脚印,而是流畅的。所以电影应该是“动画化”的。希望您理解我的意思:)假设您只想将动画应用于转换,您可以使用CSS3转换,特别是转换属性(定义哪些属性将有转换)和转换持续时间(指定从开始到完成的转换持续时间)。还有转换计时功能,允许您使用以下任何转换模式:线性|缓进|缓出|缓进|缓出|三次贝塞尔(n,n,n,n) 请参阅我对您的
如何将动画设置为css旋转?我是说,不是一步一个脚印,而是流畅的。所以电影应该是“动画化”的。希望您理解我的意思:)假设您只想将动画应用于转换,您可以使用CSS3转换,特别是
转换属性(定义哪些属性将有转换)和转换持续时间(指定从开始到完成的转换持续时间)。还有转换计时功能
,允许您使用以下任何转换模式:线性|缓进|缓出|缓进|缓出|三次贝塞尔(n,n,n,n)
请参阅我对您的JSFIDLE的修订->您可以这样使用:
使用CSS3动画,如下所示:(示例仅针对firefox)。这将执行连续旋转,只需根据需要更改持续时间
#box.selected {
-moz-animation-name: rotation;
-moz-animation-duration: 2s;
}
@-moz-keyframes rotation {
from { -moz-transform: rotate(0deg); }
to { -moz-transform: rotate(30deg); }
}
以下是您试图做的:
重要的是要记住,在您试图设置动画的元素的class/id中,不要使用表示动画状态的类,而是使用原点和变换属性
干杯您可以使用css本身旋转它……嘿,现在检查一下,您应该真正使用属性的简短形式。你答案中的代码真的是多余的。@Codemonkey是的,因此是-ms-
版本的简写,我只是详细地演示了属性:)我将更新其他属性,使之成为简写。好吧!我的问题是旋转固定点:它会产生奇怪的效果,不会“围绕”旋转point@rudi_visser更好的是,完全删除Jquery并使用CSS伪类“:hover”,如@markzzz中所示,我认为这是因为原点也将被设置动画,因为它处于悬停状态,直接将其应用于#框。使用“变换原点”(transform origin)它也不起作用:(我围绕固定旋转点进行了一些奇怪的“移动”):(
#container
{
padding:100px;
}
#box
{
width:200px;
height:200px;
background-color:red;
}
#box.selected
{
transform: rotate(30deg);
-ms-transform: rotate(30deg); /* IE 9 */
-webkit-transform: rotate(30deg); /* Safari and Chrome */
-o-transform: rotate(30deg); /* Opera */
-moz-transform: rotate(30deg); /* Firefox */
}
$('#box').hover(
function () {
$(this).addClass('selected');
},
function () {
$(this).removeClass('selected');
}
);
#box
{
width:200px;
height:200px;
background-color:red;
transition-property: all;
transition-duration: 0.3s;
/* Explicit above, can also use shorthand */
-o-transition: all 0.3s;
-moz-transition: all 0.3s;
-webkit-transition: all 0.3s;
-ms-transition: all 0.3s;
/* Also shorthand with the easing-function */
-ms-transition: all 0.3s linear;
}
-webkit-transition: all 1s ease-in-out;
-moz-transition: all 1s ease-in-out;
-o-transition: all 1s ease-in-out;
-ms-transition: all 1s ease-in-out;
transition: all 1s ease-in-out;
#box.selected {
-moz-animation-name: rotation;
-moz-animation-duration: 2s;
}
@-moz-keyframes rotation {
from { -moz-transform: rotate(0deg); }
to { -moz-transform: rotate(30deg); }
}