Vue2实现tab切换

Vue2实现tab切换

以下代码实现了一个tab切换的功能,点击不同的tab会切换到对应的内容,并且选中的tab文字带下划线,下划线宽度比文字宽度短,并且与文字居中。

html 复制代码
<template>
  <div>
    <div class="tabs">
      <div 
        v-for="(tab, index) in tabs" 
        :key="index" 
        class="tab" 
        :class="{ 'active': activeTab === index }"
        @click="activeTab = index"
      >
        {{ tab }}
        <div class="underline" v-if="activeTab === index"></div>
      </div>
    </div>
  </div>
</template>

<script>
export default {
  data() {
    return {
      tabs: ['Tab 1', 'Tab 2', 'Tab 3'],
      activeTab: 0
    }
  }
}
</script>

<style>
.tabs {
  display: flex;
  justify-content: space-around;
}

.tab {
  position: relative;
  padding: 10px;
  cursor: pointer;
}

.underline {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 80%;
  height: 2px;
  background-color: black;
}

.active {
  font-weight: bold;
}

.active .underline {
  display: block;
}
</style>
相关推荐
码界奇点9 分钟前
Java Web学习 第15篇jQuery从入门到精通的万字深度解析
java·前端·学习·jquery
小鑫同学44 分钟前
Alias Assistant:新一代 macOS Shell 别名管理解决方案
前端·前端工程化
꒰ঌ小武໒꒱1 小时前
RuoYi-Vue 前端环境搭建与部署完整教程
前端·javascript·vue.js·nginx
名字越长技术越强1 小时前
前端之相对路径
前端
望道同学2 小时前
PMP/信息系统项目管理师 9 张 思维导图【考试必备】
前端·后端·程序员
局i2 小时前
Vue 中 v-text 与 v-html 的区别:文本渲染与 HTML 解析的抉择
前端·javascript·vue.js
+VX:Fegn08952 小时前
计算机毕业设计|基于springboot+vue的学校课程管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·课程设计
fruge2 小时前
接口 Mock 工具对比:Mock.js、Easy Mock、Apifox 的使用场景与配置
开发语言·javascript·ecmascript
菜鸟冲锋号3 小时前
问题:增量关联(实时同步新数据) 这个场景中,如果hudi_pay 变更了一条数据,hudi_order_pay_join 结果的数据会跟着变化吗
服务器·前端·数据库
贩卖黄昏的熊3 小时前
typescript 快速入门
开发语言·前端·javascript·typescript·ecmascript·es6