欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 新车 > 切换按钮组动画效果

切换按钮组动画效果

2024/10/26 4:30:16 来源:https://blog.csdn.net/m0_55766628/article/details/142847223  浏览:    关键词:切换按钮组动画效果

<!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 {display: flex;justify-content: center;align-items: center;height: 100vh;background-color: #f0f0f0;}.container {display: flex;/* align-items: center; */position: relative;width: 300px;height: 50px;border-radius: 5px;/* 圆角更小 */overflow: hidden;background-color: #EBEBEB;/* 背景稍暗 *//* padding: 5px; 内边距 */box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);}.button {width: 65px;margin: 5px;display: block;text-align: center;height: calc(100% - 10px);line-height: 40px;border: none;border-radius: 5px;background-color: transparent;cursor: pointer;font-size: 14px;color: #3B3B3B;/* 默认字体颜色为白色 */transition: background-color 0.3s, color 0.3s;position: relative;z-index: 2;/* background-color: red; */}.button:hover {background-color: rgba(255, 255, 255, 0.3);/* 悬停背景 */}.indicator {position: absolute;/* padding: 5px; */width: 65px;height: calc(100% - 10px);margin: 5px;background-color: #fff;/* 指示器颜色 */transition: transform 0.3s ease-in-out;z-index: 1;border-radius: 10px;/* 确保指示器在最下层 */}/* 为每个按钮添加对应的选中效果 */.button.selected {/* 选中时背景为白色 */color: black;/* 选中时字体为黑色 */}</style>
</head><body><div class="container"><div class="indicator" id="indicator"></div><span class="button selected" onclick="moveIndicator(0)">按钮 1</span><span class="button" onclick="moveIndicator(1)">按钮 2</span><span class="button" onclick="moveIndicator(2)">按钮 3</span><span class="button" onclick="moveIndicator(3)">按钮 4</span></div><script>function moveIndicator(index) {const indicator = document.getElementById('indicator');const buttons = document.querySelectorAll('.button');const offset = index * 75; // 每个按钮的宽度为 75pxindicator.style.transform = `translateX(${offset}px)`;// 更新按钮状态buttons.forEach((button, i) => {if (i === index) {button.classList.add('selected'); // 添加选中样式} else {button.classList.remove('selected'); // 移除其他按钮的选中样式}});}</script></body></html>

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com