TitlePage.vue 1011 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. <template>
  2. <div :class="'mb-4' + mdAndDown ? ' mt-8' : ''">
  3. <h1>
  4. <slot />
  5. </h1>
  6. <h2 v-if="mdAndUp">
  7. <slot name="subtitle" />
  8. </h2>
  9. </div>
  10. </template>
  11. <script setup lang="ts">
  12. import { useDisplay } from 'vuetify'
  13. const { mdAndDown, mdAndUp } = useDisplay()
  14. </script>
  15. <style scoped lang="scss">
  16. h1,
  17. h2 {
  18. text-align: center;
  19. text-transform: uppercase;
  20. }
  21. h1 {
  22. font-size: 4rem;
  23. line-height: 3.5rem;
  24. letter-spacing: 0.3rem;
  25. margin-top: 2rem;
  26. margin-bottom: 2rem;
  27. }
  28. h2 {
  29. font-size: 1.8rem;
  30. line-height: 2rem;
  31. letter-spacing: 0.4rem;
  32. margin-left: 1rem;
  33. margin-right: 1rem;
  34. }
  35. @media (max-width: 1240px) {
  36. h1 {
  37. font-size: 2rem;
  38. line-height: 2.5rem;
  39. }
  40. h2 {
  41. letter-spacing: 0.1rem;
  42. width: 100%;
  43. }
  44. }
  45. @media (max-width: 600px) {
  46. h1,
  47. h2 {
  48. width: 80%;
  49. margin: auto;
  50. }
  51. h1 {
  52. font-size: 2rem;
  53. line-height: 2.5rem;
  54. margin-bottom: 18px;
  55. }
  56. h2 {
  57. letter-spacing: 0.1rem;
  58. font-size: 1.2rem;
  59. }
  60. }
  61. </style>