【问题标题】:Trouble aligning content inside v-row or v-col in Vuetify.js在 Vuetify.js 中无法对齐 v-row 或 v-col 中的内容
【发布时间】:2021-03-15 10:21:38
【问题描述】:

我在使用 Vuetify 在我的 Vue 应用程序中正确对齐事物时遇到问题。

<v-card class="mx-auto">
  <v-row>
    <v-col
      v-for="(item, i) in items"
      :key="i"
      align-end
      justify-end
    >
      <v-btn class="btn">
        <v-icon>{{ item.icon }}</v-icon>
        <span class="ml-2">{{ item.text }}</span>
      </v-btn>
    </v-col>
  </v-row>
  ...

我只是想把它向右对齐。

【问题讨论】:

    标签: vue.js nuxt.js vuetify.js


    【解决方案1】:

    您在 &lt;v-col&gt; 上设置的属性不存在(即 align-end 和 justify-end)。它们是&lt;v-row&gt; 组件(它是一个弹性容器)上的属性。您需要改用类。

    在选择组件属性时,请务必参考 Vuetify 组件页面上的 API->props 部分。

    试试

    <v-col class="d-flex justify-end">
        <v-btn>Button</v-btn>
    </v-col>
    

    请注意,对齐方式取决于 v-col 的宽度。如果 v-col 仅与按钮一样宽,则需要使用 cols="x" 属性设置宽度。

    【讨论】:

    • 实际上我采用了类似的解决方案,但使用了 v-card。这对我有用&lt;v-card class="d-flex justify-end"&gt;
    • 很高兴你把它修好了。如果我的回答有帮助,我非常感谢您通过单击 upvote/downvote 按钮下方的勾号将其标记为正确。
    【解决方案2】:

    direction: rtl 添加到您的v-btn,这里是codepen

    <template>
      <v-btn class="btn rtl">
      ...
      </v-btn>
    </template>
    
    <style>
    .rtl { direction: rtl; }
    </style>
    

    【讨论】:

    • 我很确定这不是他们所要求的,但即使使用 CSS 的语言特性也不是解决此问题的正确方法。您可以轻松使用display: flex; flex-flow: row-reverse
    猜你喜欢
    • 2020-11-05
    • 2021-12-14
    • 1970-01-01
    • 1970-01-01
    • 2020-09-17
    • 2020-04-20
    • 2020-02-01
    • 2021-12-10
    • 1970-01-01
    相关资源
    最近更新 更多