本文笔记基于「千古壹号」的GitHub项目:https://github.com/qianguyihao/web
非商业用途自由转载,保持署名,注明出处!
1.过渡: transition( 美 [trænˈzɪʃn] )
2.转换: transform
3.动画:animation( 美 [ˌænɪˈmeɪʃn])
/*all表示所有,可以仅设置宽、高,1s表示持续时间。linear表示线性变化,0s表示延迟时间再执行*/
transition: all 1s linear 0s;
box-shadow: 0 0 15px #AAA;
1.转换需要结合悬停,过渡;
2.转换包括2D转换,3D转换:
3.多种属性可以结合使用。
transform: scale(2, 0.5);
transform: translate(-50%, -50%);
transform: rotate(45deg);
transform:translate(-600px ,200px) rotate(45deg);
body:hover .rocket{
transform:translate(500px,-500px) rotate(45deg);
}
transform-origin: center bottom;
transform: rotateX(360deg);
perspective: 200px;
transform: translateZ(100px);
z轴悬停前的父盒子加透视。
@keyframes xz {
0% {
transform: rotateX(0deg) rotateY(0deg);
}
100% {
transform: rotateX(360deg) rotateY(360deg);
}
}
transform-style: preserve-3d;//让盒子保持3D效果
animation: xz 8s linear infinite;//调用动画效果:旋转函数,持续时间,线性(匀速),无限循环。一般只设置前2个参数
transform-origin: left;
0% {}
25%{}
······
100%{}
transform: translateX(500px) translateY(0px);
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
1 .shark内插入背景图,则成为背景图的父亲,故设置动画函数:
height: 270px; /* 盒子的宽高是一帧的宽高 */
animation: sharkRun 1s steps(8) infinite;
2 动画函数:270*8=2160px;
0% {
}
100% {
background-position: left -2160px; /* 动画结束时,让图片位于最底部? */
}
1 .sharkBox调用动画函数
animation: sharkBoxRun 10s linear infinite;
2动画函数
0% {
transform: translateX(-600px);
}
100% {
transform: translateX(3000px);
}