标签:
CSS3中使用animation属性,可以不适用JavaScript而制作动画,运用的好,可以做到很多漂亮的效果,最近有空,来摸索一下animation的使用,做几个demo玩玩
animation属性能够改变元素的位置和各种css属性
animation 属性是一个简写属性,用于设置六个动画属性:
上边的animation-name属性,需要填写一个自定义的动画名称,这就需要我们创建动画。在css3中,使用@keyframes规则来创建动画。但是这里要特别注意,目前的浏览器都不支持@keyframes,所以在使用的时候,要写成下边的形式:
定义和用法
例如:
//这里我只写了一个,实际上要注意不同的浏览器支持不同,同一个mymove要用不同的keyframes格式定义多次
@keyframes mymove
{
0% {top:0px; left:0px; background:red;}
25% {top:0px; left:100px; background:blue;}
50% {top:100px; left:100px; background:yellow;}
75% {top:100px; left:0px; background:green;}
100% {top:0px; left:0px; background:red;}
}
———————————————————–我是分割线————————————————————-
transition属性用于平滑过渡,在hover或者click的时候,改变各种css属性时,实现平滑过渡,而不是瞬间改变
transition 属性是一个简写属性,用于设置四个过渡属性:
但是这里要特别注意,为了满足不同浏览器的支持,要写成下边的形式:
div
{
width:100px;
height:100px;
background:blue;
//改变宽度 在2s内改变 线性改变 延迟1s后改变
transition:width 2s linear 1s;
-moz-transition:width 2s linear 1s; /* Firefox 4 */
-webkit-transition:width 2s linear 1s; /* Safari and Chrome */
-o-transition:width 2s linear 1s; /* Opera */
}
div:hover
{
width:300px;
}
———————————————————–我是分割线————————————————————-
transform属性指变换,包括拉伸,压缩,旋转,偏移等等。
transform分为2D转换和3D转换,下边分别来说。
transform的2D转换:
但是这里要特别注意,为了满足不同浏览器的支持,要写成下边的形式:
div
{
transform: skew(30deg,20deg);
-ms-transform: skew(30deg,20deg); /* IE 9 */
-webkit-transform: skew(30deg,20deg); /* Safari and Chrome */
-o-transform: skew(30deg,20deg); /* Opera */
-moz-transform: skew(30deg,20deg); /* Firefox */
}
transform的3D转换:
CSS3中的动画,animation、transition和transform属性的运用
标签:
原文地址:http://blog.csdn.net/creabine/article/details/51329761