You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

150 lines
2.6 KiB

  1. <template>
  2. <div class="weband">
  3. <section class="cover">
  4. </section>
  5. <section class="albums">
  6. <h2>{{this.artist}} | Albums</h2>
  7. <ul>
  8. <li v-for="album in albums" v-bind:key="album.title" v-on:click="albumSelected(album)">
  9. {{album.title}} | {{album.year}}
  10. </li>
  11. </ul>
  12. </section>
  13. <section class="icono-2">
  14. </section>
  15. <section class="contact">
  16. <span>contact<span class="point">@</span>{{this.artist.toLowerCase()}}<span class="point">.</span>space</span>
  17. <footer class="flex-center">
  18. dede<span class='point'>.</span>space<span class='pipe'>|</span>{{new Date().getFullYear()}}
  19. </footer>
  20. </section>
  21. <Player v-bind:album="currentAlbum"/>
  22. </div>
  23. </template>
  24. <script>
  25. import Player from './Player.vue'
  26. import * as data from '../data.json';
  27. export default {
  28. name: 'Weband',
  29. props: {
  30. msg: String
  31. },
  32. components: {
  33. Player
  34. },
  35. data: function () {
  36. return {
  37. artist: data.artist,
  38. albums: data.albums,
  39. currentAlbum: data.albums[0]
  40. }
  41. },
  42. methods: {
  43. albumSelected: function(album){
  44. this.currentAlbum = album;
  45. }
  46. }
  47. }
  48. </script>
  49. <style scoped>
  50. @import '../assets/css/_variables.css';
  51. .point {
  52. margin: 0px var(--pretty-margin);
  53. }
  54. .pipe {
  55. margin: 0px calc(3 * var(--pretty-margin));
  56. }
  57. section{
  58. height: 100vh;
  59. }
  60. section h2 {
  61. font-size: 2rem;
  62. }
  63. section:nth-of-type(odd){
  64. background-color: white;
  65. color: var(--secondary-color);
  66. }
  67. section:nth-of-type(even){
  68. background-color: var(--secondary-color);
  69. color: white;
  70. }
  71. section.cover{
  72. background : url(../assets/images/icono_1.png) no-repeat center center;
  73. background-color: var(--main-color);
  74. }
  75. section.albums{
  76. background-color: black;
  77. color:white;
  78. display: flex;
  79. flex-direction: column;
  80. justify-content: center;
  81. line-height: 200%;
  82. }
  83. section.albums > * {
  84. padding-left: 10vw;
  85. }
  86. section.albums h2 {
  87. padding-left: 20vw;
  88. font-weight: normal;
  89. }
  90. section.albums ul {
  91. list-style-type: none;
  92. }
  93. section.icono-2{
  94. background : url(../assets/images/icono_2.png) no-repeat center center;
  95. background-color: var(--secondary-color);
  96. }
  97. section.contact{
  98. display : flex;
  99. flex-direction: column;
  100. justify-content: center;
  101. align-items: center;
  102. position :relative;
  103. /* background : url(../assets/images/contact.png) no-repeat center center; */
  104. background-color: var(--main-color);
  105. /*color:white; */
  106. }
  107. footer{
  108. font-size: 0.92rem;
  109. position: absolute;
  110. width: 100%;
  111. bottom: 0;
  112. text-align: center;
  113. }
  114. .hidden{
  115. display: none;
  116. }
  117. </style>