News.vue 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. <template>
  2. <LayoutContainer>
  3. <v-row>
  4. <v-col cols="6">
  5. <h6 class="small-title">Découvrez nos dernières actualités</h6>
  6. <h2 class="title">Quoi de neuf ?</h2>
  7. </v-col>
  8. <v-col cols="6">
  9. <v-btn class="btn-news" text>VOIR TOUTES LES ACTUALITÉS</v-btn>
  10. </v-col>
  11. </v-row>
  12. <v-row>
  13. <!-- caroussel des aactualités-->
  14. <v-col cols="12">
  15. <v-sheet
  16. class="mx-auto"
  17. max-width="800"
  18. >
  19. <v-slide-group
  20. v-model="model"
  21. class="pa-4"
  22. selected-class="bg-primary"
  23. show-arrows
  24. >
  25. <v-slide-group-item
  26. v-for="item in items"
  27. :key="i"
  28. v-slot="{ isSelected, toggle, selectedClass }"
  29. >
  30. <v-card
  31. color="grey-lighten-1"
  32. :class="['ma-4', selectedClass]"
  33. height="200"
  34. width="100"
  35. @click="toggle"
  36. >
  37. <div class="d-flex fill-height align-center justify-center">
  38. <v-scale-transition>
  39. <v-icon
  40. v-if="isSelected"
  41. color="white"
  42. size="48"
  43. icon="mdi-close-circle-outline"
  44. ></v-icon>
  45. </v-scale-transition>
  46. </div>
  47. </v-card>
  48. </v-slide-group-item>
  49. </v-slide-group>
  50. <v-expand-transition>
  51. <v-sheet
  52. v-if="model != null"
  53. height="200"
  54. >
  55. <div class="d-flex fill-height align-center justify-center">
  56. <h3 class="text-h6">
  57. Selected {{ model }}
  58. </h3>
  59. </div>
  60. </v-sheet>
  61. </v-expand-transition>
  62. </v-sheet>
  63. </v-col>
  64. </v-row>
  65. </LayoutContainer>
  66. </template>
  67. <script setup>
  68. const items = ref([
  69. { src: "/images/reviews/review1.png" },
  70. { src: "/images/reviews/review2.png" },
  71. { src: "/images/reviews/review3.png" },
  72. { src: "/images/reviews/review4.png" },
  73. { src: "/images/reviews/review5.png" },
  74. ]);
  75. </script>
  76. <style scoped>
  77. .carousel-card {
  78. width: calc(100% / 3 - 12px);
  79. height: 150px;
  80. border-radius: 8px;
  81. overflow: hidden;
  82. transition: 0.3s;
  83. }
  84. .carousel-card.active {
  85. transform: scale(1.05);
  86. }
  87. .small-title {
  88. font-family: "Barlow";
  89. font-style: normal;
  90. font-weight: 600;
  91. width: 12rem;
  92. font-size: 12px;
  93. letter-spacing: 0.18em;
  94. text-transform: uppercase;
  95. margin-left: 2rem;
  96. color: #071b1f;
  97. margin-top: 4.5rem;
  98. }
  99. .title {
  100. margin-top: 2rem;
  101. font-family: "Barlow";
  102. font-style: normal;
  103. font-weight: 600;
  104. font-size: 42px;
  105. line-height: 42px;
  106. margin-left: 2rem;
  107. color: #071b1f;
  108. }
  109. .btn-news {
  110. color: #9edbdd;
  111. margin-left: 10rem;
  112. margin-top: 8rem;
  113. border-radius: 2rem;
  114. font-family: "Barlow";
  115. background: transparent;
  116. /** border color 9edbdd */
  117. border: 1px solid #9edbdd;
  118. border-radius: 6px;
  119. font-style: normal;
  120. font-weight: 600;
  121. font-size: 12px;
  122. line-height: 18px;
  123. text-transform: uppercase;
  124. display: flex;
  125. flex-direction: row;
  126. align-items: center;
  127. padding: 25px;
  128. font-weight: 700;
  129. font-size: 10px;
  130. line-height: 15px;
  131. }
  132. </style>