<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
body {
background-color: black;
}
/* houdini api 自定义css属性 */
/* 解决了渐变背景无法应用动画 */
/* 解决了变量在动画中不生效的问题 */
@property --desc {
syntax: "<angle>";
initial-value: 0deg;
inherits: false;
}
.container {
width: 200px;
height: 400px;
display: flex;
justify-content: center;
align-items: center;
margin: 0 auto;
/* 渐变背景本质上是浏览器绘制的一张图片 ,后面传递的是告诉浏览器的参数 ,在绘制期间开发者是无法干预的
,但是css属性是可以参与绘制过程的 */
background-image: linear-gradient(
var(--desc),
#5ddcff,
#3c67e3 43%,
#4e00c2
);
animation: rotate 3s linear infinite;
}
@keyframes rotate {
to {
--desc: 360deg;
}
}
.inner {
width: 180px;
height: 380px;
background-color: black;
}
</style>
</head>
<body>
<div class="container">
<div class="inner"></div>
</div>
</body>
</html>
07-24
691
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)