炫酷圆形按钮调色器

<!DOCTYPE html>

<html lang="zh">

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>圆形按钮颜色控制器</title>

<style>

body {

font-family: 'Arial', sans-serif;

display: flex;

flex-direction: column;

justify-content: center;

align-items: center;

height: 100vh;

margin: 0;

background-color: #f0f0f0;

}

.container {

text-align: center;

background: white;

padding: 30px;

border-radius: 10px;

box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);

width: 300px;

}

.display-button {

width: 40px;

height: 40px;

border-radius: 50%;

margin: 20px auto;

background-color: #cccccc;

border: none;

cursor: default;

transition: all 0.3s ease;

box-shadow:

0 4px 8px rgba(0, 0, 0, 0.1),

inset 0 0 10px rgba(0, 0, 0, 0.1);

}

.control-buttons {

display: flex;

justify-content: space-between;

margin-top: 20px;

}

.control-button {

padding: 10px 15px;

border: none;

border-radius: 5px;

cursor: pointer;

font-weight: bold;

color: white;

transition: all 0.2s ease;

}

.control-button:hover {

transform: translateY(-2px);

box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);

}

.control-button:active {

transform: translateY(0);

}

#button1 {

background-color: #e74c3c;

}

#button2 {

background-color: #e67e22;

}

#button3 {

background-color: #2ecc71;

}

/* 状态类 */

.red {

background-color: #e74c3c !important;

box-shadow:

0 4px 12px rgba(231, 76, 60, 0.4),

inset 0 0 10px rgba(0, 0, 0, 0.1) !important;

}

.orange {

background-color: #e67e22 !important;

box-shadow:

0 4px 12px rgba(230, 126, 34, 0.4),

inset 0 0 10px rgba(0, 0, 0, 0.1) !important;

}

.green {

background-color: #2ecc71 !important;

box-shadow:

0 4px 12px rgba(46, 204, 113, 0.4),

inset 0 0 10px rgba(0, 0, 0, 0.1) !important;

}

</style>

</head>

<body>

<div class="container">

<h2>按钮颜色控制器</h2>

<button class="display-button" id="displayBtn"></button>

<div class="control-buttons">

<button class="control-button" id="button1">红色</button>

<button class="control-button" id="button2">橙色</button>

<button class="control-button" id="button3">绿色</button>

</div>

</div>

<script>

// 获取DOM元素

const displayBtn = document.getElementById('displayBtn');

const button1 = document.getElementById('button1');

const button2 = document.getElementById('button2');

const button3 = document.getElementById('button3');

// 移除所有颜色类

function resetColors() {

displayBtn.classList.remove('red', 'orange', 'green');

}

// 按钮事件监听

button1.addEventListener('click', function() {

resetColors();

displayBtn.classList.add('red');

displayBtn.textContent = "红色状态";

});

button2.addEventListener('click', function() {

resetColors();

displayBtn.classList.add('orange');

displayBtn.textContent = "橙色状态";

});

button3.addEventListener('click', function() {

resetColors();

displayBtn.classList.add('green');

displayBtn.textContent = "绿色状态";

});

</script>

</body>

</html>

运行效果:

相关推荐
烛阴4 小时前
从`new()`到`.DoSomething()`:一篇讲透C#方法与构造函数的终极指南
前端·c#
还债大湿兄4 小时前
阿里通义千问调用图像大模型生成轮动漫风格 python调用
开发语言·前端·python
谢尔登4 小时前
defineProperty如何弥补数组响应式不足的缺陷
前端·javascript·vue.js
蓝瑟忧伤5 小时前
前端技术新十年:从工程体系到智能化开发的全景演进
前端
Baklib梅梅5 小时前
员工手册:保障运营一致性与提升组织效率的核心载体
前端·ruby on rails·前端框架·ruby
IT_陈寒6 小时前
Redis性能翻倍的5个冷门技巧,90%开发者都不知道第3个!
前端·人工智能·后端
T***u3336 小时前
前端框架在性能优化中的实践
javascript·vue.js·前端框架
jingling5557 小时前
vue | 在 Vue 3 项目中集成高德地图(AMap)
前端·javascript·vue.js
油丶酸萝卜别吃7 小时前
Vue3 中如何在 setup 语法糖下,通过 Layer 弹窗组件弹出自定义 Vue 组件?
前端·vue.js·arcgis
J***Q29214 小时前
Vue数据可视化
前端·vue.js·信息可视化