Formations.vue 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. <template>
  2. <AnchoredSection id="webinars">
  3. <LayoutContainer>
  4. <div class="alt-theme pt-6 mt-12">
  5. <v-row>
  6. <LayoutUISubTitle>
  7. Nos accompagnements sur-mesure
  8. </LayoutUISubTitle>
  9. </v-row>
  10. <v-row class="formation pb-6 align-center">
  11. <v-col
  12. cols="12"
  13. md="6"
  14. v-for="(formation, index) in formations"
  15. :key="index"
  16. >
  17. <div class="mb-6">
  18. <v-img
  19. :src="formation.image"
  20. class="background-img"
  21. />
  22. </div>
  23. <div>
  24. <h3>
  25. {{ formation.sessions }}
  26. </h3>
  27. <h4>
  28. {{ formation.title }}
  29. </h4>
  30. <p class="details mb-5">
  31. {{ formation.description }}
  32. </p>
  33. <v-btn :to="formation.link">
  34. {{ formation.buttonText }}
  35. </v-btn>
  36. </div>
  37. </v-col>
  38. </v-row>
  39. </div>
  40. </LayoutContainer>
  41. </AnchoredSection>
  42. </template>
  43. <script setup lang="ts">
  44. import AnchoredSection from "~/components/Layout/AnchoredSection.vue";
  45. import type { Formation } from "~/types/interface";
  46. const formations: Array<Formation> = [
  47. {
  48. image: "/images/logiciels/school/formation.png",
  49. overlayClass: "image-overlay1",
  50. sessions: "3 formations disponibles",
  51. title: "Des formations adaptées à chacun - en ligne",
  52. description:
  53. "Parce qu’on sait qu’appréhender un nouvel outil peut-être fastidieux et que vous n’avez pas de temps à perdre,...",
  54. buttonText: "Découvrir toutes nos formations",
  55. link: "/formations",
  56. },
  57. {
  58. image: "/images/logiciels/school/webinaire.png",
  59. overlayClass: "image-overlay2",
  60. sessions: "Toutes nos sessions",
  61. title: "Trouvez le webinaire qu'il vous faut ",
  62. description:
  63. "Des explications précises sur certains modules du logiciel Opentalent School, c'est possible pour aller encore plus loin...",
  64. buttonText: "Découvrir nos webinaires ",
  65. link: "/webinaires",
  66. },
  67. ];
  68. </script>
  69. <style scoped>
  70. .v-row {
  71. max-width: 1600px;
  72. margin: 0 auto;
  73. }
  74. :deep(h2) {
  75. width: 60rem;
  76. }
  77. .background-img {
  78. width: 600px;
  79. height: 400px;
  80. background-size: cover;
  81. background-position: center;
  82. }
  83. .alt-color {
  84. color: var(--on-primary-color-alt);
  85. }
  86. .formation {
  87. .v-btn {
  88. width: 30rem;
  89. height: 4rem;
  90. font-weight: 500;
  91. font-size: 1.5rem;
  92. line-height: 18px;
  93. background: transparent;
  94. color: var(--on-primary-color);
  95. border: 1px solid;
  96. border-color: var(--on-primary-color);
  97. border-radius: 0.5rem;
  98. text-transform: none;
  99. }
  100. h3 {
  101. font-weight: 500;
  102. font-size: 1.8rem;
  103. line-height: 26px;
  104. color: var(--on-primary-color);
  105. margin-bottom: 3rem;
  106. }
  107. h4 {
  108. font-weight: 500;
  109. font-size: 1.8rem;
  110. line-height: 26px;
  111. color: var(--on-primary-color);
  112. margin-bottom: 3rem;
  113. }
  114. .details {
  115. font-weight: 300;
  116. font-size: 1.2rem;
  117. line-height: 1.5rem;
  118. color: var(--on-primary-color);
  119. }
  120. @media (max-width: 600px) {
  121. .v-btn {
  122. height: 96px;
  123. }
  124. :deep(.v-btn__content) {
  125. white-space: pre-wrap;
  126. line-height: 1.2em;
  127. padding: auto;
  128. text-align: center;
  129. }
  130. }
  131. }
  132. </style>