vue+iview tabs context-menu 弹出框怎么修改样式

今天遇到一个需求说页面顶部的菜单右键弹出框离得有点远

代码是这样

javascript 复制代码
<Tabs type="card" closable class="main-tags-col-tabs" 
      v-model="activeTab" @on-click="handleClickTag" 
:before-remove="handleBeforeRemove" 
capture-focus @on-contextmenu="contextmenu">
        <TabPane
          v-for="(item, index) in tagList"
          :key="index"
          :name="item.name"
          :label="item.label"
          icon="custom iconfont icon-dot-circle"
          :closable="index != 0"
          :context-menu="index == 0 ? false : true"
        ></TabPane>
        <template slot="contextMenu">
          <DropdownItem @click.native="handleCloseTag('closeOther')">
            <Icon type="md-close"></Icon>
            <span class="dropdown-icon-space">关闭其他</span>
          </DropdownItem>
          <DropdownItem @click.native="handleCloseTag('closeAll')">
            <Icon type="ios-close-circle-outline"></Icon>
            <span class="dropdown-icon-space">关闭所有</span>
          </DropdownItem>
        </template>
      </Tabs>

表现出来是这样

首先打开控制台,找到这个样式是 ivu-dropdown-transfer

发现这个样式是自带了transfer

那么在style里面写scoped 就不会生效,不写的话是全局了又会影响其他地方下拉框

然后去官网找 transfer-class-name 发现tabs没有这个选项

那只能在右键时候动态往里添加了

@on-contextmenu="contextmenu"

javascript 复制代码
contextmenu(item) {
      this.$nextTick(() => {
        const dropdownMenu = document.querySelector('.ivu-dropdown-transfer')
        console.log(dropdownMenu)
        if (dropdownMenu) {
          dropdownMenu.classList.add('fixed-context-menu')
        }
      })
      this.contextMenuActiveName = item.name
    },

ivu-dropdown-transfer 这里注意ivu-select-dropdown找不到的好像和下拉框的样式有冲突

然后全局写一个样式

javascript 复制代码
<style>

.fixed-context-menu {

  top: 97px !important;

}

</style>
相关推荐
天若有情6731 分钟前
笑喷!乌鸦哥版demo函数掀桌怒怼主函数:难办?那就别办了!
java·前端·servlet
记得记得就1512 分钟前
【Nginx 实战系列(一)—— Web 核心概念、HTTP/HTTPS协议 与 Nginx 安装】
前端·nginx·http
天蓝色的鱼鱼2 分钟前
mescroll老用户亲测z-paging:这些功能让我果断切换!
前端·uni-app
JarvanMo7 分钟前
适用于 iOS 开发者的 Flutter 3.38:Xcode 与 Swift 集成新技巧
前端
北极糊的狐20 分钟前
Vue 中 vue-awesome-swiper的使用笔记(适配 Vue2/Vue3)
前端·javascript·vue.js
anyup23 分钟前
🔥100+ 天,已全面支持鸿蒙!uView Pro 近期更新盘点及未来计划
前端·uni-app·harmonyos
2***574235 分钟前
前端数据可视化应用
前端·信息可视化
DevUI团队42 分钟前
Angular开发者必看:深度解析单元测试核心技巧与最佳实践
前端·javascript·angular.js
Mintopia43 分钟前
🌐 动态网络环境下的 WebAIGC 断点续传与容错技术
前端·人工智能·aigc
答案answer1 小时前
一些经典的3D编辑器开源项目
前端·开源·three.js