fix layout

This commit is contained in:
jxxghp
2023-06-30 17:04:19 +08:00
parent e12c464f14
commit dab2fa4a13
6 changed files with 26 additions and 41 deletions
+1 -1
View File
@@ -15,7 +15,7 @@ body {
flex-grow: 1; flex-grow: 1;
// TODO: Use grid gutter variable here // TODO: Use grid gutter variable here
padding-block: 1.5rem; padding-block: 0.5rem;
} }
.layout-footer { .layout-footer {
+1 -1
View File
@@ -4,7 +4,7 @@
%boxed-content { %boxed-content {
@at-root #{&}-spacing { @at-root #{&}-spacing {
// TODO: Use grid gutter variable here // TODO: Use grid gutter variable here
padding-inline: 1.5rem; padding-inline: 0.5rem;
} }
inline-size: 100%; inline-size: 100%;
+1 -1
View File
@@ -1,5 +1,5 @@
<script lang="ts" setup> <script lang="ts" setup>
const route = useRoute() const route = useRoute();
</script> </script>
<template> <template>
+2 -8
View File
@@ -31,8 +31,8 @@ const getChipColor = (type: string) => {
:width="props.width" :width="props.width"
class="outline-none shadow ring-gray-500" class="outline-none shadow ring-gray-500"
:class="{ :class="{
'scale-105 shadow-lg': hover.isHovering, 'transition transform-cpu duration-300 scale-105 shadow-lg': hover.isHovering,
'ring-1 transition duration-300 ': isImageLoaded, 'ring-1': isImageLoaded,
}" }"
> >
<VImg <VImg
@@ -96,10 +96,4 @@ const getChipColor = (type: string) => {
.on-hover img { .on-hover img {
@apply brightness-50; @apply brightness-50;
} }
.media-slide-card {
position: relative;
flex: 0 0 auto;
max-inline-size: 11rem;
}
</style> </style>
+13 -16
View File
@@ -4,7 +4,7 @@ import { formatSeason } from "@core/utils/formatters";
// 输入参数 // 输入参数
const props = defineProps({ const props = defineProps({
media: Object as PropType<Subscribe> media: Object as PropType<Subscribe>,
}); });
// 根据 type 返回不同的图标 // 根据 type 返回不同的图标
@@ -25,28 +25,25 @@ const getPercentage = (total: number, lack: number) => {
} }
return Math.round(((total - lack) / total) * 100); return Math.round(((total - lack) / total) * 100);
}; };
</script> </script>
<template> <template>
<VCard <VCard
:key="props.media?.id" :key="props.media?.id"
:image="props.media?.backdrop || props.media?.poster" :image="props.media?.backdrop || props.media?.poster"
class="card-with-overlay"> class="card-with-overlay"
>
<VCardItem> <VCardItem>
<template #prepend> <template #prepend>
<VIcon <VIcon size="1.9rem" color="white" :icon="getIcon(props.media?.type || '')" />
size="1.9rem"
color="white"
:icon="getIcon(props.media?.type||'')"
/>
</template> </template>
<VCardTitle class="text-white"> <VCardTitle class="text-white">
{{ props.media?.name }} {{ formatSeason(props.media?.season ? props.media?.season.toString() : "") }} {{ props.media?.name }}
{{ formatSeason(props.media?.season ? props.media?.season.toString() : "") }}
</VCardTitle> </VCardTitle>
<template #append> <template #append>
<div class="me-n3"> <div class="me-n3">
<MoreBtn color="white"/> <MoreBtn color="white" />
</div> </div>
</template> </template>
</VCardItem> </VCardItem>
@@ -57,9 +54,7 @@ const getPercentage = (total: number, lack: number) => {
</p> </p>
</VCardText> </VCardText>
<VCardText <VCardText class="d-flex justify-space-between align-center flex-wrap">
class="d-flex justify-space-between align-center flex-wrap"
>
<div class="d-flex align-center"> <div class="d-flex align-center">
<IconBtn icon="mdi-star" color="white" class="me-1" /> <IconBtn icon="mdi-star" color="white" class="me-1" />
<span class="text-subtitle-2 text-white me-4">{{ props.media?.vote }}</span> <span class="text-subtitle-2 text-white me-4">{{ props.media?.vote }}</span>
@@ -79,7 +74,9 @@ const getPercentage = (total: number, lack: number) => {
<VProgressLinear <VProgressLinear
v-if="props.media?.total_episode || 0 > 0" v-if="props.media?.total_episode || 0 > 0"
:model-value="getPercentage(props.media?.total_episode || 0, props.media?.lack_episode || 0)" :model-value="
getPercentage(props.media?.total_episode || 0, props.media?.lack_episode || 0)
"
bg-color="success" bg-color="success"
color="success" color="success"
/> />
@@ -87,7 +84,7 @@ const getPercentage = (total: number, lack: number) => {
</template> </template>
<style lang="scss"> <style lang="scss">
.card-with-overlay img{ .card-with-overlay img {
@apply brightness-50; @apply brightness-50;
} }
</style> </style>
@@ -1,12 +1,12 @@
<script lang="ts" setup> <script lang="ts" setup>
import VerticalNavSectionTitle from '@/@layouts/components/VerticalNavSectionTitle.vue' import VerticalNavSectionTitle from "@/@layouts/components/VerticalNavSectionTitle.vue";
import VerticalNavLayout from '@layouts/components/VerticalNavLayout.vue' import VerticalNavLayout from "@layouts/components/VerticalNavLayout.vue";
import VerticalNavLink from '@layouts/components/VerticalNavLink.vue' import VerticalNavLink from "@layouts/components/VerticalNavLink.vue";
// Components // Components
import Footer from '@/layouts/components/Footer.vue' import Footer from "@/layouts/components/Footer.vue";
import NavbarThemeSwitcher from '@/layouts/components/NavbarThemeSwitcher.vue' import NavbarThemeSwitcher from "@/layouts/components/NavbarThemeSwitcher.vue";
import UserProfile from '@/layouts/components/UserProfile.vue' import UserProfile from "@/layouts/components/UserProfile.vue";
// Banner // Banner
</script> </script>
@@ -17,18 +17,12 @@ import UserProfile from '@/layouts/components/UserProfile.vue'
<template #navbar="{ toggleVerticalOverlayNavActive }"> <template #navbar="{ toggleVerticalOverlayNavActive }">
<div class="d-flex h-100 align-center"> <div class="d-flex h-100 align-center">
<!-- 👉 Vertical nav toggle in overlay mode --> <!-- 👉 Vertical nav toggle in overlay mode -->
<IconBtn <IconBtn class="ms-n3 d-lg-none" @click="toggleVerticalOverlayNavActive(true)">
class="ms-n3 d-lg-none"
@click="toggleVerticalOverlayNavActive(true)"
>
<VIcon icon="mdi-menu" /> <VIcon icon="mdi-menu" />
</IconBtn> </IconBtn>
<!-- 👉 Search --> <!-- 👉 Search -->
<div <div class="d-flex align-center cursor-pointer" style="user-select: none">
class="d-flex align-center cursor-pointer"
style="user-select: none;"
>
<!-- 👉 Search Trigger button --> <!-- 👉 Search Trigger button -->
<IconBtn> <IconBtn>
<VIcon icon="mdi-magnify" /> <VIcon icon="mdi-magnify" />