类似mac dock的tab切换组件

一、效果图

鼠标在圆圈位置的放大效果

二、所用组件库

这里使用的组件库为contextmenu-ui组件库

安装方式:

复制代码
npm i contextmenu-ui

引用方式:

复制代码
// main.js

import App from './App.vue'
import VueTestUI from 'contextmenu-ui/dist/contextmenu-ui.umd.cjs'
import 'contextmenu-ui/dist/index.css'

const app = createApp(App)
app.use(VueTestUI);

三、所用组件及如何使用

所用的组件则是其中的ZsTab组件,这里直接上代码

html 复制代码
<template>
    <div>
        <ZsTab :active-name="activeName" :is-trans="true">
            <ZsTabPane name="first"></ZsTabPane>
            <ZsTabPane name="second"></ZsTabPane>
            <ZsTabPane name="third"></ZsTabPane>
            <ZsTabPane name="fourth"></ZsTabPane>
            <ZsTabPane name="fifth"></ZsTabPane>
            <ZsTabPane name="sixth"></ZsTabPane>
            <ZsTabPane name="seventh"></ZsTabPane>
        </ZsTab>
    </div>
</template>
<script setup>
import { ref } from 'vue'
const activeName = ref('first')
</script>

直接在ZsTabPane标签中填充内容即可,其中is-trans属性最好设置为true,这个组件的放大效果还不错,但是当ZsTabPane组件的内容单位为px时,其放大效果会有些问题,后续需要继续改进。

这里是组件的参数:

相关推荐
我血条子呢3 分钟前
【CSS】类似渐变色弯曲border
前端·css
DanyHope4 分钟前
LeetCode 两数之和:从 O (n²) 到 O (n),空间换时间的经典实践
前端·javascript·算法·leetcode·职场和发展
hgz07105 分钟前
企业级多项目部署与Tomcat运维实战
前端·firefox
zhoumeina995 分钟前
懒加载图片
前端·javascript·vue.js
用户1887871069847 分钟前
SVG描边 - CSS3实现动画绘制矢量图
前端
码上行走7 分钟前
【实战】Flex布局-上下自适应
前端
DarkLONGLOVE7 分钟前
Vue的“小外挂”:玩转自定义指令
前端·javascript·vue.js
ccino .9 分钟前
pdf-xss文件制作过程
前端·pdf·xss
崇山峻岭之间13 分钟前
Matlab学习记录06
前端·学习·matlab
半兽先生13 分钟前
微信小程序与web-view页面双向通信
前端·微信小程序·小程序