Пользовательский компонент Vuetify для профиля пользователя

#vue.js #vuetify.js #uicomponents

#vue.js #vuetify.js #пользовательские компоненты

Вопрос:

Я хочу создать пользовательский компонент профиля, который выглядит как профиль пользователя LinkedIn. Как вы можете видеть, есть элемент карты, а затем на него накладывается фотография аватара. Как я могу создать такой компонент? Я новичок в Vuejs / Vuetify. Я искал несколько примеров в Интернете, но не смог найти ничего, что объясняет, что мне нужно.

Фотография пользователя накладывается на фоновую карту

Я ценю ваш фрагмент кода или предложение.

Комментарии:

1. я бы посоветовал разобраться в реквизитах, слотах и шаблоне .vue , чтобы понять, как vue работает как компонент. OpenClassroom — хорошее место для изучения всего о Vue.

2. спасибо, я сделаю. также любой пример codepen, на который вы можете указать мне на этот вопрос?

Ответ №1:

Из их документации я просто взял этот пример и изменил его, однако вам может потребоваться добавить разные классы для стилизации, поскольку я не смог сделать его отзывчивым.

  <template>
      <v-card class="mx-auto" max-width="434" tile>
          <v-img height="100%" src="https://cdn.vuetifyjs.com/images/cards/server-room.jpg"></v-img>
          <v-col>
            <v-avatar size="100" style="position:absolute; top: 130px">
              <v-img src="https://cdn.vuetifyjs.com/images/profiles/marcus.jpg"></v-img>
            </v-avatar>
          </v-col>
            <v-list-item color="rgba(0, 0, 0, .4)">
              <v-list-item-content>
                <v-list-item-title class="title">Marcus Obrien</v-list-item-title>
                <v-list-item-subtitle>Network Engineer</v-list-item-subtitle>
              </v-list-item-content>
            </v-list-item>
      </v-card>
    </template>
  

Комментарии:

1. нижние 40 пикселей лучше для ответственности, чтобы видеть это снизу

Ответ №2:

Я только что попробовал. Я думаю, вы можете сделать больше теста. Предварительный просмотр изображения

 <template>
  <v-card class="mx-auto" max-width="1000" tile>
      <v-img height="200" src="https://cdn.vuetifyjs.com/images/cards/server-room.jpg"></v-img>
      <v-row style="margin:2.5%;position:absolute; top: 130px">

                  <v-list-item>
                   <v-list-item-avatar size="100">
                      <img
                        src="https://www.w3schools.com/howto/img_avatar.png"
                        alt="John"
                      >
                    </v-list-item-avatar>
                    <v-list-item-content>
                      <v-list-item-title class="title" style="margin-top:20px;">Injamamul Haque Sonet</v-list-item-title>
                      <v-list-item-subtitle>Software Engineer | dokanee</v-list-item-subtitle>
                    </v-list-item-content>
                  </v-list-item>
    </v-row>
  </v-card>
</template>