在 vuetify 中将叠加在晶圆厂按钮上



正如您在下面的代码片段中看到的那样,覆盖层没有获得晶圆厂按钮的圆形形式。我怎样才能做到这一点?

new Vue({
el: '#app',
vuetify: new Vuetify(),
data() {
return {
choices: [{
text: "Foo",
isCorrect: true
},
{
text: "Bar",
isCorrect: false
}
]
}
}
})
<!DOCTYPE html>
<html>
<head>
<link href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/@mdi/font@3.x/css/materialdesignicons.min.css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/vuetify@2.x/dist/vuetify.min.css" rel="stylesheet">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, minimal-ui">
<script src="https://cdn.jsdelivr.net/npm/vue@2.x/dist/vue.js"></script>
<script src="https://cdn.jsdelivr.net/npm/vuetify@2.x/dist/vuetify.js"></script>
</head>
<body>
<div id="app">
<v-hover v-slot:default="{ hover }">
<v-btn light fab large color="primary">
<v-overlay absolute :value="!hover">
b
</v-overlay>
a
</v-btn>
</v-hover>
</div>
</body>
</html>

我可以用 css 做到这一点,但我正在寻找通过 vuetify 解决的问题。

尝试添加以下 CSS 规则,并且不要忘记将类添加到您的btn(class="btn--overlayed"(:

.btn--overlayed .v-btn__content {
position: static;
}
.btn--overlayed .v-overlay {
border-radius: 50%;
}

代码片段

new Vue({
el: '#app',
vuetify: new Vuetify(),
data() {
return {
choices: [{
text: "Foo",
isCorrect: true
},
{
text: "Bar",
isCorrect: false
}
]
}
}
})
.btn--overlayed .v-btn__content {
position: static;
}
.btn--overlayed .v-overlay {
border-radius: 50%;
}
<!DOCTYPE html>
<html>
<head>
<link href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/@mdi/font@3.x/css/materialdesignicons.min.css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/vuetify@2.x/dist/vuetify.min.css" rel="stylesheet">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, minimal-ui">
<script src="https://cdn.jsdelivr.net/npm/vue@2.x/dist/vue.js"></script>
<script src="https://cdn.jsdelivr.net/npm/vuetify@2.x/dist/vuetify.js"></script>
</head>
<body>
<div id="app">
<v-hover v-slot:default="{ hover }">
<v-btn light fab large color="primary" class="btn--overlayed">
<v-overlay absolute :value="!hover">
b
</v-overlay>
a
</v-btn>
</v-hover>
</div>
</body>
</html>

最新更新