<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Color</title>
<style>
/* 自定义颜色 */
/* :root { */
/* --topColor: #002e9b; */
/* --bottomColor: #F5DF4D; */
/* } */
.bg {
width: 100%;
height: 100vh;
background-image: linear-gradient(var(--topColor) 0%, var(--topColor) 50%, var(--bottomColor) 50%, var(--bottomColor) 100%);
}
.circle {
width: 395px;
height: 395px;
border-radius: 50%;
box-shadow: 8px 8px 10px 0 #000;
-webkit-text-stroke: 0.3px #002e9b;
font-size: 45px;
display: flex;
align-items: center;
justify-content: center;
}
.left {
position: absolute;
top: calc(50% - 197.5px);
left: calc(30% - 197.5px);
background-color: var(--topColor);
color: var(--bottomColor);
}
.right {
position: absolute;
top: calc(50% - 197.5px);
right: calc(30% - 197.5px);
background-color: var(--bottomColor);
color: var(--topColor);
}
@media screen and (max-width: 1000px) {
.bg {
background-image: linear-gradient(to left, var(--topColor) 0%, var(--topColor) 50%, var(--bottomColor) 50%, var(--bottomColor) 100%);
}
.left {
left: calc(50% - 100px);
top: calc(30% - 100px);
}
.right {
right: calc(50% - 100px);
top: calc(75% - 100px);
}
.circle {
width: 200px;
height: 200px;
font-size: 20px;
}
}
</style>
</head>
<body>
<div class="bg" onclick="changeColor()">
<div class="left circle" id="left"></div>
<div class="right circle" id="right"></div>
</div>
</body>
<script>
var color = [
{
topName: "克莱因蓝",
topColor: "#002e9b",
bottomName: "靓丽黄",
bottomColor: "#F5DF4D"
},
{
topName: "爱马仕橙",
topColor: "#ff770f",
bottomName: "浅灰",
bottomColor: "#c1c1c1"
},
{
topName: "中国红",
topColor: "#d7000f",
bottomName: "扶光",
bottomColor: "#f0c2a2"
},
{
topName: "栀子黄",
topColor: "#fac03d",
bottomName: "苔绿色",
bottomColor: "#697723"
},
{
topName: "淡酒红",
topColor: "#a27e7e",
bottomName: "淡黄色",
bottomColor: "#faead3"
},
{
topName: "中绿",
topColor: "#96a48b",
bottomName: "低饱和黄",
bottomColor: "#d8caaf"
}, {
topName: "蓝莓",
topColor: "#3e3f4c",
bottomName: "珊瑚粉红",
bottomColor: "#be98aa"
}, {
topName: "烈淡紫",
topColor: "#4d3a59",
bottomName: "灰白",
bottomColor: "#e1dad9"
}, {
topName: "克莱因蓝",
topColor: "#002fa7",
bottomName: "雾灰",
bottomColor: "#c8c7c5"
}, {
topName: "勃艮第红",
topColor: "#800020",
bottomName: "米白",
bottomColor: "#dcd2c6"
}, {
topName: "海蓝",
topColor: "#467879",
bottomName: "浅土色",
bottomColor: "#e7cd79"
}, {
topName: "闪光绿",
topColor: "#dbe196",
bottomName: "鸢尾科",
bottomColor: "#c8c7c5"
}, {
topName: "米色",
topColor: "#dbccd1",
bottomName: "叶绿色",
bottomColor: "#94aa67"
}, {
topName: "脏橘",
topColor: "#c99e8c",
bottomName: "冷蓝",
bottomColor: "#465e65"
}, {
topName: "青绿灰",
topColor: "#98a594",
bottomName: "兰花色",
bottomColor: "#c8c7c5"
}
];
var index = -1;
//切换颜色
function changeColor() {
if (index < color.length - 1) {
index++;
} else {
index = 0;
}
var root = document.querySelector(":root");
var left = document.getElementById("left");
var right = document.getElementById("right");
root.style.setProperty("--topColor", color[index].topColor);
root.style.setProperty("--bottomColor", color[index].bottomColor);
left.innerText = color[index].topName + color[index].topColor;
right.innerText = color[index].bottomName + color[index].bottomColor;
}
//每5秒触发切换颜色的方法
function forever() {
changeColor();
setTimeout(forever, 5000);
}
forever();//记得主动调用时间方法
</script>
</html>