css动画效果代码

html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>CSS Animation</title> <style> /* 定义动画 */ @keyframes moveRight { 0% { left: 0; } 100% { left: 200px; } } /* 应用动画到元素 */ .box { width: 100px; height: 100px; background-color: red; position: relative; animation: moveRight 2s ease-in-out infinite alternate; } </style> </head> <body> <!-- 包含动画效果的元素 --> <div class="box"></div> </body> </html>

这个例子中,.box 类被定义为一个宽高为 100px 的正方形元素,并且它被设置为红色背景。我们通过 @keyframes 规则定义了一个名为 moveRight 的动画,它将 .box 元素从左侧移动到右侧。动画从左侧开始到右侧结束,持续时间为 2 秒,采用了 ease-in-out 缓动函数,并且设置为无限循环,来回移动。

在 HTML 中,我们创建了一个具有 .box 类的 <div> 元素,这个元素会应用我们定义的动画效果,使其水平移动。

1. 缩放动画

让一个元素在页面中缩放:

css
@keyframes scaleAnimation { 0% { transform: scale(1); } 50% { transform: scale(1.2); } 100% { transform: scale(1); } } .box { width: 100px; height: 100px; background-color: blue; animation: scaleAnimation 2s ease-in-out infinite; }

2. 旋转动画

让一个元素在页面中旋转:

css
@keyframes rotateAnimation { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .box { width: 100px; height: 100px; background-color: green; animation: rotateAnimation 2s linear infinite; }

3. 渐变动画

让一个元素的背景颜色在页面中渐变:

css
@keyframes colorAnimation { 0% { background-color: red; } 50% { background-color: yellow; } 100% { background-color: blue; } } .box { width: 100px; height: 100px; animation: colorAnimation 3s ease-in-out infinite; }

4. 淡入淡出动画

让一个元素在页面中淡入淡出:

css
@keyframes fadeInOut { 0% { opacity: 0; } 50% { opacity: 1; } 100% { opacity: 0; } } .box { width: 100px; height: 100px; background-color: orange; animation: fadeInOut 3s ease-in-out infinite; }

这些示例展示了一些常见的 CSS 动画效果,你可以根据需要调整动画持续时间、缓动函数和其他属性来创建自己想要的动画效果。