<!DOCTYPE html> <html> <head> <title>选项卡示例</title> <style> .tabs { overflow: hidden; /* 防止选项卡溢出容器 */ border: 1px solid #ccc; background-color: #f1f1f1; } .tab-links { margin: 0; padding: 0; list-style: none; } .tablink { background-color: inherit; /* 继承.tabs的背景色 */ float: left; /* 使选项卡并排显示 */ border: none; outline: none; cursor: pointer; padding: 14px 16px; transition: background-color 0.3s; /* 平滑过渡效果 */ width: 50%; /* 两个选项卡各占50%宽度 */ text-align: center; /* 文本居中 */ } .tablink:hover { background-color: #ddd; /* 鼠标悬停时变色 */ } .tablink.active { background-color: #4CAF50; /* 选中时变色为蓝色(这里改为绿色以示例,因为纯蓝色可能不易读) */ color: white; /* 文本颜色变为白色 */ } .tabcontent { display: none; padding: 20px; border: 1px solid #ccc; border-top: none; } .tabcontent.active { display: block; } </style> </head> <body> <div class="tabs"> <ul class="tab-links"> <li><button class="tablink active" onclick="openTab(event, 'Tab1')">Tab 1</button></li> <li><button class="tablink" onclick="openTab(event, 'Tab2')">Tab 2</button></li> </ul> <div id="Tab1" class="tabcontent active"> <h3>Tab 1 内容</h3> <p>这是Tab 1的文本内容。</p> </div> <div id="Tab2" class="tabcontent"> <h3>Tab 2 内容</h3> <p>这是Tab 2的文本内容。</p> </div> </div> <script> function openTab(evt, tabName) { var i, tabcontent, tablinks; tabcontent = document.getElementsByClassName("tabcontent"); for (i = 0; i < tabcontent.length; i++) { tabcontent[i].style.display = "none"; } tablinks = document.getElementsByClassName("tablink"); for (i = 0; i < tablinks.length; i++) { tablinks[i].className = tablinks[i].className.replace(" active", ""); } document.getElementById(tabName).style.display = "block"; evt.currentTarget.className += " active"; } </script> </body> </html>
复制
html实现TAB选项卡切换
转载请注明出处或者链接地址:https://www.qianduange.cn//article/20017.html
相关文章
-
鸿蒙HarmonyOS 5.0开发:应用配置文件(Stage模型)-app.json5配置文件
-
记一次 npm cache clean --force 时报错 Your cache folder contains root-owned files, due to a bug in...的解决方案
-
Node.js | npm下载安装及环境配置教程
-
node还在,npm丢了?
-
npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚本。
-
解决使用nvm管理node版本时提示npm下载失败的问题
-
【Vue框架】用 Vue 的时候应该选 JS 还是 TS?全面解析与实用建议
-
2024 前端技术盘点:React、Vue、Qwik 谁能领跑 2025?
-
vue遍历数组的常用方法
-
58.在 Vue 3 中使用 OpenLayers 绘制点、线、圆、多边形
发布的文章
【Qt开发教程】JSON处理QJsonDocument、QJsonObject、QJsonArray类详解及实战应用:用于解析JSON数据字符串,转换为Qt对象,转换Qt对象为JSON格式字符串
2025-02-22 16:02:22
浅谈C#库之Newtonsoft.Json
2025-02-22 16:02:22
第十天:数据提取-JsonPath
2025-02-22 16:02:21
【漏洞复现】5. Fastjson 1.2.24反序列化漏洞(CVE-2017-18349)复现
2025-02-22 16:02:21
Linux网络 | 网络计算器客户端实现与Json的安装以及使用
2025-02-22 16:02:20
解决docker不加载 /etc/docker/daemon.json文件的问题
2025-02-22 16:02:19
nlohmann/json安装与使用
2025-02-22 16:02:19
mapbox基础,使用geojson加载line线图层,实现纯色填充、图片填充、虚线和渐变效果
2025-02-22 16:02:18
鸿蒙HarmonyOS 5.0开发:应用配置文件(Stage模型)-app.json5配置文件
2025-02-22 16:02:18
记录小白C 学习之路--熟悉C VScode的json配置文件篇
2025-02-22 16:02:17
大家推荐的文章