【发布时间】:2020-10-01 16:29:35
【问题描述】:
当我使用 Vuetify 的 v-dialog 时,我的页面标题位于对话框的顶部。例如:
我不能轻易更改标题的z-index,因为这是一个旧代码库。所以我尝试像这样覆盖对话框的 z-indexes:
.v-overlay { z-index: 20001 !important; }
.v-dialog__content { z-index: 20002 !important; }
这在视觉上有效,但现在“点击外部关闭”不起作用。这是一个例子:
Vue.use(Vuetify);
var vm = new Vue({
vuetify : new Vuetify(),
el: "#app",
data: { dialog: false },
});
.banner {
position:fixed;
left:0;
right:0;
height:20px;
background-color:red;
/* z-index:1000; */
}
/** This fixes the banner, but now it won't close. **/
.v-overlay {
z-index: 1001 !important;
}
.v-dialog__content {
z-index: 1002 !important;
}
<link href="https://cdn.jsdelivr.net/npm/vuetify@2.x/dist/vuetify.min.css" rel="stylesheet"/>
<script src="https://cdn.jsdelivr.net/npm/vue@2.x/dist/vue.js"></script>
<script src="https://cdn.jsdelivr.net/npm/vuetify@2.2.30/dist/vuetify.js"></script>
<div id="app">
<v-app>
<div class='banner'>Banner</div>
<div style="height:30px;"> </div>
<v-dialog v-model='dialog'>
<template v-slot:activator="{ on, attrs }">
<v-btn v-bind="attrs" v-on="on">Show</v-btn>
</template>
<v-card>
<v-card-text>
Click outside should close.
</v-card-text>
</v-card>
</v-dialog>
</v-app>
</div>
【问题讨论】:
标签: css vuetify.js