CSS三个标题及对应内容的tab切换

要实现CSS三个标题及对应内容的tab切换,你可以使用纯HTML和CSS来完成。这里有一个简单的示例,展示了如何创建三个标题及其对应内容的tab切换效果:

HTML部分:

html

<div class="tabs">

<div class="tab" id="tab1">标题1</div>

<div class="tab" id="tab2">标题2</div>

<div class="tab" id="tab3">标题3</div>

<div class="tab-content" id="content1">

<p>这是标题1对应的内容。</p>

</div>

<div class="tab-content" id="content2">

<p>这是标题2对应的内容。</p>

</div>

<div class="tab-content" id="content3">

<p>这是标题3对应的内容。</p>

</div>

</div>

CSS部分:

css

.tabs {

display: flex;

flex-direction: column;

}

.tab {

cursor: pointer;

padding: 10px;

border: 1px solid #ccc;

margin-bottom: 5px;

}

.tab-content {

max-height: 0;

overflow: hidden;

transition: max-height 0.5s ease-in-out;

background-color: #f5f5f5;

padding: 10px;

border: 1px solid #ccc;

}

.tab-content.active {

max-height: 1000px; /* 根据你的内容调整这个值 */

}

JavaScript部分(用于切换tab):

javascript

const tabs = document.querySelectorAll('.tab');

const tabContents = document.querySelectorAll('.tab-content');

tabs.forEach((tab, index) => {

tab.addEventListener('click', () => {

tabContents.forEach(tabContent => {

tabContent.classList.remove('active');

});

tabContents[index].classList.add('active');

});

});

这个示例中,.tab 类用于表示每个标题,.tab-content 类用于表示每个标题对应的内容。默认情况下,所有内容的 max-height 设置为0,并且使用 overflow: hidden 来隐藏它们。当点击一个标题时,使用JavaScript来添加 active 类到对应的内容上,从而将 max-height 设置为一个较大的值来显示内容。你可以根据需要调整CSS中的样式和过渡效果。

相关推荐
想学后端的前端工程师10 分钟前
【Vue3组合式API实战指南:告别Options API的烦恼】
前端·javascript·vue.js
一勺-_-19 分钟前
mermaid图片如何保存成svg格式
开发语言·javascript·ecmascript
GISer_Jing2 小时前
深入拆解Taro框架多端适配原理
前端·javascript·taro
毕设源码-邱学长2 小时前
【开题答辩全过程】以 基于VUE的藏品管理系统的设计与实现为例,包含答辩的问题和答案
前端·javascript·vue.js
San30.3 小时前
深入理解 JavaScript:手写 `instanceof` 及其背后的原型链原理
开发语言·javascript·ecmascript
北冥有一鲲3 小时前
LangChain.js:RAG 深度解析与全栈实践
开发语言·javascript·langchain
狗狗摇屁屁5 小时前
JS手写防抖
开发语言·javascript·ecmascript
清风细雨_林木木5 小时前
Chart.js和 Echart的区别
开发语言·javascript·ecmascript
沐泽__6 小时前
iframe内嵌页面双向通信
前端·javascript·chrome
小北方城市网6 小时前
第4 课:Vue 3 路由与状态管理实战 —— 从单页面到多页面应用
前端·javascript·vue.js