将页脚添加到Vuetify的列表/菜单/组合框

时间:2018-08-29 12:16:40

标签: html css vue.js vuejs2 vuetify.js

我正在尝试将页脚插入Vuetify的列表或菜单或组合框。他们都是一样的。我尝试了所有没有解决方案的possibe css解决方案。

这是我想要的,但是我希望即使滚动也可以在底部静态看到底部按钮:

enter image description here

常规的固定css解决方案在我应用样式的任何元素上均不起作用。

这是我要实现的组合框:

<v-combobox
    style="min-width: 260px;"
    dense
    :value="item.description"
    :items="products"
    item-text="name"
    item-value="id"
    :error-messages="item.description_error"
    :filter="filter_products"
    @input="product_selected"
    ref="description">
    <template
        slot="item"
        slot-scope="{ index, item, parent }">
        <v-list-tile-content v-if="!item.footer">{{ item.name }}</v-list-tile-content>
        <v-btn v-else flat dark small style="padding-left:0!important;margin-left:0!important;display:table-row;width:100%"
           color="primary"
           depressed
           :ripple="false"
           @click.stop="add_new_product"><v-icon left>add_box</v-icon>{{ item.footer }}</v-btn>
    </template>
</v-combobox>

还尝试使用v菜单和v列表

<v-menu max-height="250px">
    <v-text-field label="Hello" slot="activator"></v-text-field>
    <v-list>
        <v-list-tile v-for="item in 10">hello</v-list-tile>
    </v-list>
    <p style="position: fixed; bottom: 0;">IUWHEGIuiHWEGIUHGIWUEHGIUWHEGIUHWEIUG</p>
</v-menu>

1 个答案:

答案 0 :(得分:0)

Codepen

我们需要将max-heightoverflow: auto添加到v-list元素中,以便我们可以滚动列表,而不是整个菜单。
将“页脚”添加到v-menu的底部,它应该可以正常工作。
只需将其包装在v-card中,以使菜单不透明。

<v-menu v-model="menu" offset-y>
  <v-btn slot="activator">Menu</v-btn>
  <v-card>
    <v-list class="custom-list">
      <v-list-tile v-for="item in items"></v-list-tile>
    </v-list>
    <v-divider></v-divider>
    <div class="pa-1" @click.stop="">
      <v-btn flat dark small color="primary" depressed :ripple="false">
        <v-icon left>add_box</v-icon>
          footer button
      </v-btn>
    </div>
  </v-card>
</v-menu>

css

.custom-list {
  max-height:200px; 
  overflow: auto;
} 

我们可以使用@click.stop=""来防止它关闭菜单。