【问题标题】:Vuetify vertical spacingVuetify 垂直间距
【发布时间】:2020-10-08 00:25:31
【问题描述】:

11 月 10 日可能是太晚了,我处于白痴模式,但我们开始...

我有一个导航链接列表(v-list 中的 v-list-item)...

我正试图强制其中一个链接位于抽屉底部。出于某种原因,即使自定义 CSS 也没有移动它,所以我被卡住了。

这是我所拥有的,任何帮助表示赞赏:

 <v-navigation-drawer v-model="drawer" app clipped>
  <v-list>
    <!-- Navbar is displayed with for loop -->
    <v-list-item
      link
      v-for="(link, index) in links"
      :key="index"
      router
      :to="link.route"
    >
      <v-list-item-action>
        <v-icon>mdi-{{ link.icon }}</v-icon>
      </v-list-item-action>
      <v-list-item-content>
        <v-list-item-title>{{ link.name }}</v-list-item-title>
      </v-list-item-content>
    </v-list-item>

    <v-list-item
      link
      router
      :to="'/feature-request'"
      class="text--disabled"
      :align-self="end"
    >
      <v-list-item-action>
        <v-icon class="text--secondary">mdi-star-circle-outline</v-icon>
      </v-list-item-action>
      <v-list-item-content>
        <v-list-item-title class="text--secondary"
          >Feature Request</v-list-item-title
        >
      </v-list-item-content>
    </v-list-item>
  </v-list>
</v-navigation-drawer>

【问题讨论】:

  • 你能展示一些有这个问题的图片吗??

标签: vue.js vuetify.js


【解决方案1】:

你可以使用 flex 来实现你想要的。对于最后一项,设置类mt-auto,它将最后一项放在底部。这里还有一个gotchav-list-item 有一个内置的flex 类属性,所以你需要覆盖它:

.v-list-item {
  flex: 0;
}

所以将列表设置为全高并放置弹性:

<v-list class="d-flex flex-column" height="100%">

按照你的方式迭代第一个项目,对于最后一个项目,放置前面提到的mt-auto

<v-list-item class="mt-auto">

CODEPEN 供您参考。

【讨论】:

  • 是的,这个问题肯定得到了我哈哈。这完全符合书面要求。谢谢。我也可以在显示固定的情况下移动它,但作为一项规则,我尽量避免使用“固定”,因为它总是会在我不注意的情况下破坏某些东西,哈哈
  • 是的,使用fixed 会很吓人,哈哈。幸运的是,flex 通常可以节省一天的时间。周末愉快,编码愉快! :)