CSS 动画可以通过 JavaScript 来控制,实现更复杂和动态的效果。
基础概念:
CSS 动画是使用 CSS 的 @keyframes
规则定义动画序列,然后通过 CSS 属性将动画应用到元素上。JavaScript 可以通过操作元素的样式属性或相关的方法来控制动画的执行。
优势:
类型:
应用场景:
如果遇到问题:
解决方法:
示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<style>
#box {
width: 50px;
height: 50px;
background-color: red;
animation: move 2s linear infinite;
}
@keyframes move {
0% {
transform: translateX(0);
}
50% {
transform: translateX(200px);
}
100% {
transform: translateX(0);
}
}
</style>
</head>
<body>
<div id="box"></div>
<button id="pauseBtn">暂停</button>
<button id="resumeBtn">继续</button>
<script>
const box = document.getElementById('box');
const pauseBtn = document.getElementById('pauseBtn');
const resumeBtn = document.getElementById('resumeBtn');
pauseBtn.addEventListener('click', () => {
box.style.animationPlayState = 'paused';
});
resumeBtn.addEventListener('click', () => {
box.style.animationPlayState = 'running';
});
</script>
</body>
</html>
在上述示例中,通过 JavaScript 控制了红色方块动画的暂停和继续。
领取专属 10元无门槛券
手把手带您无忧上云