Преглед на файлове

:art: using grid layout for homepage

tags/0.9.0
J преди 4 години
родител
ревизия
3743413a08
променени са 2 файла, в които са добавени 136 реда и са изтрити 92 реда
  1. 0
    23
      vue-theme/src/app.vue
  2. 136
    69
      vue-theme/src/pages/index.vue

+ 0
- 23
vue-theme/src/app.vue Целия файл

@@ -71,29 +71,6 @@ html
71 71
                 /* Single & List Pages */
72 72
                 > article
73 73
                     background-color: lightpink
74
-                    > * > * 
75
-                        padding: $ms-0
76
-                    > section, > header
77
-                        margin: 0 0 $ms-0
78
-                    .block-wrapper
79
-                        .wp-block-gallery
80
-                            .blocks-gallery
81
-                                /* &-grid
82
-                                    list-style: none
83
-                                &-item
84
-                                    float: left
85
-                            &.columns-1
86
-                                .blocks-gallery-item
87
-                                    width: 100%
88
-                            &.columns-2
89
-                                .blocks-gallery-item
90
-                                    width: 50%
91
-                            &.columns-3
92
-                                .blocks-gallery-item
93
-                                    width: 33.33%
94
-                            &.columns-4
95
-                                .blocks-gallery-item
96
-                                    width: 25% */
97 74
                 
98 75
         nav, footer
99 76
             &.main

+ 136
- 69
vue-theme/src/pages/index.vue Целия файл

@@ -1,70 +1,92 @@
1 1
 // Homepage grid
2 2
 <template lang="pug">
3 3
 .page--index.f-row.between
4
-    article 
5
-        ul.f-grow.f-col
6
-            //- if sticky
7
-            //- li.f-row.wrap.w-max
8
-            //-     h3(v-if="!allStickyLoaded") loading...
9
-            //-     section(v-else-if="allStickyLoaded").shadow
10
-            //-         h4.t-cap sticky
11
-            //-         ul
12
-            //-             li(v-for="sticky in allSticky")
13
-            //-                 p {{ sticky.type }}: {{ sticky.title }}
14
-            //- loading
15
-            //- li.f-row.wrap.w-max
16
-            //-     h3(v-if="!allPagesLoaded") loading...
17
-            //-     .content(v-else-if="allPages['welcome']" v-html="allPages['welcome'].content")
4
+    article.w-max
5
+        section
6
+            ul
7
+                li.wide
8
+                    p 1 - 1
9
+                li
10
+                    p 1 - 2
11
+                li
12
+                    p 1 - 3
13
+                li
14
+                    p 1 - 4
15
+                li
16
+                    p 1 - 5
18 17
 
19
-            //- top section
20
-            li.f-row.wrap.w-max
21
-                section(v-if="allEpisodesLoaded && allEpisodes").shadow
22
-                    router-link(:to="`/episodes`")
23
-                        h3.t-up episodes
24
-                    router-link(:to="`/episodes/${Object.values(allEpisodes)[0].slug}`")
25
-                        img.index(src="https://i1.wp.com/www.craftinamerica.org/wp-content/uploads/2020/09/20200210_133120-e1599254267307.jpg")
26
-                        h2.t-up.t-cntr {{ Object.values(allEpisodes)[0].slug }}
27
-                    p episode excerpt, Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nisl ligula, ullamcorper nec dapibus a, ullamcorper a elit. Integer mattis interdum mauris, sit amet feugiat dui consequat et. Curabitur cursus justo quis nunc euismod, nec ornare sem ornare. Mauris eget purus finibus, tempus tellus sed, maximus nisi. Fusce cursus placerat sodales...[&hellip;]
18
+        section
19
+            ul.max
20
+                li
21
+                    p 2 - 1
28 22
 
29
-                section(v-if="allExhibitionsLoaded && allExhibitions").shadow
30
-                    router-link(:to="`/exhibitions`")
31
-                        h3.t-up exhibitions
32
-                    router-link(:to="`/exhibitions/${Object.values(allExhibitions)[0].slug}`")
33
-                        img.index(src="https://i1.wp.com/www.craftinamerica.org/wp-content/uploads/2020/09/20200210_133120-e1599254267307.jpg")
34
-                        h2.t-up.t-cntr {{ Object.values(allExhibitions)[0].slug }}
35
-                    p episode excerpt, Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nisl ligula, ullamcorper nec dapibus a, ullamcorper a elit. Integer mattis interdum mauris, sit amet feugiat dui consequat et. Curabitur cursus justo quis nunc euismod, nec ornare sem ornare. Mauris eget purus finibus, tempus tellus sed, maximus nisi. Fusce cursus placerat sodales...[&hellip;]
23
+        section
24
+            ul.flipped
25
+                li
26
+                    p 3 - 1
27
+                li
28
+                    p 3 - 2
29
+                li
30
+                    p 3 - 3
31
+                li
32
+                    p 3 - 4
33
+                li.wide
34
+                    p 3 - 5
35
+        
36
+        //- if sticky
37
+        //- li.f-row.wrap.w-max
38
+        //-     h3(v-if="!allStickyLoaded") loading...
39
+        //-     section(v-else-if="allStickyLoaded").shadow
40
+        //-         h4.t-cap sticky
41
+        //-         ul
42
+        //-             li(v-for="sticky in allSticky")
43
+        //-                 p {{ sticky.type }}: {{ sticky.title }}
44
+        //- loading
45
+        //- li.f-row.wrap.w-max
46
+        //-     h3(v-if="!allPagesLoaded") loading...
47
+        //-     .content(v-else-if="allPages['welcome']" v-html="allPages['welcome'].content")
36 48
 
37
-                section(v-if="allEventsLoaded && allEvents").shadow
38
-                    router-link(:to="`/events`")
39
-                        h3.t-up events
40
-                    router-link(:to="`/events/${Object.values(allEvents)[0].slug}`")
41
-                        img.index(src="https://i1.wp.com/www.craftinamerica.org/wp-content/uploads/2020/09/20200210_133120-e1599254267307.jpg")
42
-                        h2.t-up.t-cntr {{ Object.values(allEvents)[0].slug }}
43
-                    p episode excerpt, Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nisl ligula, ullamcorper nec dapibus a, ullamcorper a elit. Integer mattis interdum mauris, sit amet feugiat dui consequat et. Curabitur cursus justo quis nunc euismod, nec ornare sem ornare. Mauris eget purus finibus, tempus tellus sed, maximus nisi. Fusce cursus placerat sodales...[&hellip;]
49
+        //- top section
50
+        //- section(v-if="allEpisodesLoaded").shadow
51
+        //-     router-link(:to="`/episodes`")
52
+        //-         h3.t-up episodes
53
+        //-     router-link(:to="`/episodes/${Object.values(allEpisodes)[0]}`")
54
+        //-         img.index(src="https://i1.wp.com/www.craftinamerica.org/wp-content/uploads/2020/09/20200210_133120-e1599254267307.jpg")
55
+        //-         h2.t-up.t-cntr {{ Object.values(allEpisodes)[0] }}
56
+        //-     p episode excerpt, Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nisl ligula, ullamcorper nec dapibus a, ullamcorper a elit. Integer mattis interdum mauris, sit amet feugiat dui consequat et. Curabitur cursus justo quis nunc euismod, nec ornare sem ornare. Mauris eget purus finibus, tempus tellus sed, maximus nisi. Fusce cursus placerat sodales...[&hellip;]
44 57
 
45
-                section(v-if="allPostsLoaded && allPosts").shadow
46
-                    router-link(:to="`/posts`")
47
-                        h3.t-up shorts PLACEHOLDER
48
-                    router-link(:to="`/posts/${Object.values(allPosts)[0].slug}`")
49
-                        img.index(src="https://i1.wp.com/www.craftinamerica.org/wp-content/uploads/2020/09/20200210_133120-e1599254267307.jpg")
50
-                        h2.t-up.t-cntr {{ Object.values(allPosts)[0].slug }}
51
-                    p episode excerpt, Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nisl ligula, ullamcorper nec dapibus a, ullamcorper a elit. Integer mattis interdum mauris, sit amet feugiat dui consequat et. Curabitur cursus justo quis nunc euismod, nec ornare sem ornare. Mauris eget purus finibus, tempus tellus sed, maximus nisi. Fusce cursus placerat sodales...[&hellip;]
58
+        //- section(v-if="allExhibitionsLoaded").shadow
59
+        //-     router-link(:to="`/exhibitions`")
60
+        //-         h3.t-up exhibitions
61
+        //-     router-link(:to="`/exhibitions/${Object.values(allExhibitions)[0]}`")
62
+        //-         img.index(src="https://i1.wp.com/www.craftinamerica.org/wp-content/uploads/2020/09/20200210_133120-e1599254267307.jpg")
63
+        //-         h2.t-up.t-cntr {{ Object.values(allExhibitions)[0] }}
64
+        //-     p episode excerpt, Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nisl ligula, ullamcorper nec dapibus a, ullamcorper a elit. Integer mattis interdum mauris, sit amet feugiat dui consequat et. Curabitur cursus justo quis nunc euismod, nec ornare sem ornare. Mauris eget purus finibus, tempus tellus sed, maximus nisi. Fusce cursus placerat sodales...[&hellip;]
52 65
 
53
-            //- middle row
54
-            li.f-row.wrap.w-max
55
-                section(v-if="allArtistsLoaded && allArtists").shadow
56
-                    router-link(:to="`/artists`")
57
-                        h3.t-up artists
58
-                    router-link(:to="`/artists/${Object.values(allArtists)[0].slug}`")
59
-                        img.index(src="https://i1.wp.com/www.craftinamerica.org/wp-content/uploads/2020/09/20200210_133120-e1599254267307.jpg")
60
-                        h2.t-up.t-cntr {{ Object.values(allArtists)[0].slug }}
61
-                    p episode excerpt, Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nisl ligula, ullamcorper nec dapibus a, ullamcorper a elit. Integer mattis interdum mauris, sit amet feugiat dui consequat et. Curabitur cursus justo quis nunc euismod, nec ornare sem ornare. Mauris eget purus finibus, tempus tellus sed, maximus nisi. Fusce cursus placerat sodales...[&hellip;]
66
+        //- section(v-if="allEventsLoaded").shadow
67
+        //-     router-link(:to="`/events`")
68
+        //-         h3.t-up events
69
+        //-     router-link(:to="`/events/${Object.values(allEvents)[0]}`")
70
+        //-         img.index(src="https://i1.wp.com/www.craftinamerica.org/wp-content/uploads/2020/09/20200210_133120-e1599254267307.jpg")
71
+        //-         h2.t-up.t-cntr {{ Object.values(allEvents)[0] }}
72
+        //-     p episode excerpt, Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nisl ligula, ullamcorper nec dapibus a, ullamcorper a elit. Integer mattis interdum mauris, sit amet feugiat dui consequat et. Curabitur cursus justo quis nunc euismod, nec ornare sem ornare. Mauris eget purus finibus, tempus tellus sed, maximus nisi. Fusce cursus placerat sodales...[&hellip;]
62 73
 
63
-            //- footer row
64
-            li.f-row.wrap.w-max
65
-                footer.f-col
66
-                    p end of article icon
67
-                    img(src="../star.svg")
74
+        //- section(v-if="allPostsLoaded").shadow
75
+        //-     router-link(:to="`/posts`")
76
+        //-         h3.t-up shorts PLACEHOLDER
77
+        //-     router-link(:to="`/posts/${Object.values(allPosts)[0]}`")
78
+        //-         img.index(src="https://i1.wp.com/www.craftinamerica.org/wp-content/uploads/2020/09/20200210_133120-e1599254267307.jpg")
79
+        //-         h2.t-up.t-cntr {{ Object.values(allPosts)[0] }}
80
+        //-     p episode excerpt, Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nisl ligula, ullamcorper nec dapibus a, ullamcorper a elit. Integer mattis interdum mauris, sit amet feugiat dui consequat et. Curabitur cursus justo quis nunc euismod, nec ornare sem ornare. Mauris eget purus finibus, tempus tellus sed, maximus nisi. Fusce cursus placerat sodales...[&hellip;]
81
+
82
+        //- //- middle row
83
+        //- section(v-if="allArtistsLoaded").shadow
84
+        //-     router-link(:to="`/artists`")
85
+        //-         h3.t-up artists
86
+        //-     router-link(:to="`/artists/${Object.values(allArtists)[0]}`")
87
+        //-         img.index(src="https://i1.wp.com/www.craftinamerica.org/wp-content/uploads/2020/09/20200210_133120-e1599254267307.jpg")
88
+        //-         h2.t-up.t-cntr {{ Object.values(allArtists)[0] }}
89
+        //-     p episode excerpt, Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nisl ligula, ullamcorper nec dapibus a, ullamcorper a elit. Integer mattis interdum mauris, sit amet feugiat dui consequat et. Curabitur cursus justo quis nunc euismod, nec ornare sem ornare. Mauris eget purus finibus, tempus tellus sed, maximus nisi. Fusce cursus placerat sodales...[&hellip;]
68 90
 </template>
69 91
 
70 92
 <script>
@@ -103,17 +125,62 @@ export default {
103 125
 <style lang="postcss">
104 126
 @import '../sss/variables.sss'
105 127
 @import '../sss/theme.sss'
106
-
107 128
 .page--index
108
-    article
109
-        ul > li
110
-            justify-content: space-around
129
+    > article
130
+        display: flex
131
+        justify-content: space-around
132
+        flex-direction: column
133
+        align-items: stretch
134
+        section
135
+            border: 1px yellow solid
136
+            ul
137
+                list-style: none
138
+@media (min-width: $medium)
139
+    .page--index > article > section
140
+        &:nth-of-type(2)
141
+            margin: 1em auto
142
+        ul
143
+            display: grid
144
+            grid-template-columns: 
145
+                50% 24% 24%
146
+            grid-template-rows: 
147
+                47% 47%
148
+            gap: 4% 1%
149
+            justify-items: strech
111 150
             align-items: stretch
112
-            section
113
-                padding: 1em
114
-    footer
115
-        img
116
-            width: 30px
117
-            height: 30px
118
-            
151
+            height: auto
152
+            li
153
+                min-height: 20em
154
+                background-color: purple
155
+                &.wide:nth-of-type(1)
156
+                    grid-column-start: 1
157
+                    grid-row-start: 1
158
+                    grid-row-end: end
159
+                &:nth-of-type(2), &:nth-of-type(3)
160
+                    grid-row-start: 1
161
+                    grid-column-start: 2
162
+                &:nth-of-type(3)
163
+                    grid-column-start: 3
164
+                &:nth-of-type(4), &:nth-of-type(5)
165
+                    grid-column-start: 2
166
+                    grid-row-start: 2
167
+                &:nth-of-type(5)
168
+                    grid-column-start: 3
169
+            &.max
170
+                grid-template-columns: 
171
+                    auto
172
+                grid-template-rows: 
173
+                    auto
174
+            &.flipped
175
+                grid-template-columns: 
176
+                    24% 24% 50%
177
+                li
178
+                    &:nth-of-type(3)
179
+                        grid-column-start: 1
180
+                        grid-row-start: 2
181
+                    &.wide:nth-of-type(5)
182
+                        grid-column-start: 3
183
+                        grid-row-start: 1
184
+                        grid-row-end: end
185
+
119 186
 </style>

Loading…
Отказ
Запис