el-dropdown全屏模式下不展示下拉菜单处理

解决方式:

el-dropdown-menu标签上加上属性 :append-to-body="false"即可。

javascript 复制代码
<el-dropdown>
  <span class="el-dropdown-link">
    下拉菜单
    <i class="el-icon-arrow-down el-icon--right"></i>
  </span>
  <el-dropdown-menu slot="dropdown" :append-to-body="false">
    <el-dropdown-item>黄金糕</el-dropdown-item>
    <el-dropdown-item>狮子头</el-dropdown-item>
    <el-dropdown-item>螺蛳粉</el-dropdown-item>
  </el-dropdown-menu>
</el-dropdown>

注意:

1.是在el-dropdown-menu上加,不是在 el-dropdown上加。

  1. 加上之后如果样式发生了变化,极大可能是因为代码里有对el-dropdown进行处理,只需要将el-dropdown-menu的样式重置下就行。
javascript 复制代码
 .el-dropdown-menu{
        width:200px;
        font-weight: 400;
}

原因

el-dropdown在全屏模式下不显示下拉菜单,是因为在全屏状态下他的父级依然是body,所以导致我们看不到。

分析说明

用devTools工具查看,发现el-dropdown-menu组件上有接收一个叫"appendToBody"的参数,默认为true

element的其他组件。例如el-date-picker默认在全屏模式下也是也是不展示下拉菜单的,但是加上属性:append-to-body="false"就可以将元素不插入至 body 元素上。同理的,其实element底层已经对el-dropdown-menu也进行了全屏处理,虽然这个属性在文档上没有说明(害我研究好半天~) ,所以只需要给el-dropdown-menu这个标签加上:append-to-body="false"就可以了。

相关推荐
知识分享小能手10 分钟前
CSS3学习教程,从入门到精通,CSS3 定位布局页面知识点及案例代码(18)
前端·javascript·css·学习·html·css3·html5
Python私教23 分钟前
Vue 在现代 Web 开发中的优势
前端·javascript·vue.js
Front_Yue31 分钟前
Unity 与 JavaScript 的通信交互:实现跨平台的双向通信
javascript·3d·unity
fridayCodeFly31 分钟前
<KeepAlive>和<keep-alive>有什么区别
前端·javascript·vue.js
寻梦人1213838 分钟前
Vite管理的Vue3项目中monaco editer的使用以及组件封装
前端·javascript·vue.js·vscode
瓶子丶38 分钟前
企业微信通讯录效果?拿捏!!!
vue.js·uni-app
头发尚存的猿小二1 小时前
Linux--环境变量
前端·javascript·chrome
洋茄子炒鸡蛋1 小时前
有没有一刻,突然平静地想离职(VUE中使用XLSX插件导入Excel文件,日期解析存在误差)
vue.js·excel
顺丰同城前端技术团队1 小时前
都2024年了 国际化你都不会做 附使用&源码阅读
前端·javascript
outsider_友人A1 小时前
手摸手带你封装Vue组件库(16)Carousel走马灯组件
前端·javascript·vue.js