@keyframes 描述「动画进行到百分之几时,元素长什么样」。浏览器负责在关键帧之间补间,于是你能定义多状态的复杂动画,而不只是起止两点(那是 transition 的能力)。
百分比选择器 0% 可用 from、100% 可用 to。同一个关键帧规则可被多个元素复用,通过 animation 属性分别控制时长、延迟、循环次数。
@keyframes fadeUp { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } } .item { animation: fadeUp .5s ease both; animation-delay: calc(var(--i) * .08s); /* 逐个入场 */ } @keyframes blink { 50% { opacity: 0; } } .cursor { animation: blink 1s steps(2) infinite; }