【发布时间】:2019-08-20 15:23:37
【问题描述】:
我想要这样的东西(+ 是复选框,- 是删除图标):
+ |‾‾‾‾‾‾|
- |______|
这是我迄今为止尝试过的:
<!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">
</head>
<body>
<div id="app">
<v-app>
<v-col cols="12" md="6" v-for="(choice, idx) in choices" :key="idx">
<v-text-field v-model="choice.text" outlined clearable type="text">
<template v-slot:prepend>
<v-col>
<v-checkbox v-model="choice.isCorrect" hide-details />
<v-icon color="red" left>remove_circle</v-icon>
</v-col>
</template>
</v-text-field>
</v-col>
</v-app>
</div>
<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>
<script>
new Vue({
el: '#app',
vuetify: new Vuetify(),
data() {
return {
choices: [{
text: "Foo",
isCorrect: true
},
{
text: "Bar",
isCorrect: false
}
]
}
}
})
</script>
</body>
</html>
【问题讨论】:
-
您只是希望布局让它们垂直放置在文本区域旁边,还是希望将一个堆叠在另一个之上(z-index)?无论哪种方式,您都可以将类添加到您的 vue 标记中,然后使用 CSS 将内容放在您想要的位置。
-
@Paulie_D 我已经添加了 sn-p。
-
@BryceHowitson 不,不是 z-index 堆栈。通过css实现这一目标的最佳方法是什么?我可以使用边距,但这太脏了,可能会破坏字体大小等的变化。
标签: css vue.js layout vuetify.js