css定义多个延时动画案例代码
当前案例效果为:正方体从底部向上弹出并且从不透明到透明,整个过程持续两秒,动画接收后等待一秒开始无限旋转,旋转一周的时间为2秒
html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Slide Up and Rotate Animation</title>
<style>
/* 定义从底部到目标位置的平移动画 */
@keyframes slideFromBottom {
from {
transform: translateY(100%);
opacity: 0;
}
to {
transform: translateY(0);
opacity: 1;
}
}
/* 定义无限旋转动画 */
@keyframes spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
/* 应用动画到元素 */
.animated-element {
width: 100px;
height: 100px;
background-color: tomato; /* 设置背景颜色以便更容易看到动画效果 */
position: fixed; /* 使用fixed定位以保持在视口中 */
bottom: 100px; /* 从底部一定距离开始 */
left: 50%; /* 水平居中 */
transform: translateX(-50%); /* 向左移动自身宽度的50%以对齐中心 */
animation:
slideFromBottom 2s ease-out forwards, /* 先进行从底部到目标位置的平移动画 */
spin 2s linear 3s infinite; /* 然后无限旋转 */
}
</style>
</head>
<body>
<div class="animated-element"></div>
</body>
</html>