File tree Expand file tree Collapse file tree 3 files changed +158
-1
lines changed Expand file tree Collapse file tree 3 files changed +158
-1
lines changed Original file line number Diff line number Diff line change 113
113
</ div >
114
114
</ nav >
115
115
116
+ < aside class ="product-detail inactive ">
117
+ < div class ="title-container ">
118
+ < img src ="./icons/flechita.svg " alt ="arrow ">
119
+ < p class ="title "> My order</ p >
120
+ </ div >
121
+
122
+ < div class ="my-order-content ">
123
+ < div class ="shopping-cart ">
124
+ < figure >
125
+ < img src ="https://images.pexels.com/photos/276517/pexels-photo-276517.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940 " alt ="bike ">
126
+ </ figure >
127
+ < p > Bike</ p >
128
+ < p > $30,00</ p >
129
+ < img src ="./icons/icon_close.png " alt ="close ">
130
+ </ div >
131
+
132
+ < div class ="shopping-cart ">
133
+ < figure >
134
+ < img src ="https://images.pexels.com/photos/276517/pexels-photo-276517.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940 " alt ="bike ">
135
+ </ figure >
136
+ < p > Bike</ p >
137
+ < p > $30,00</ p >
138
+ < img src ="./icons/icon_close.png " alt ="close ">
139
+ </ div >
140
+
141
+ < div class ="shopping-cart ">
142
+ < figure >
143
+ < img src ="https://images.pexels.com/photos/276517/pexels-photo-276517.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940 " alt ="bike ">
144
+ </ figure >
145
+ < p > Bike</ p >
146
+ < p > $30,00</ p >
147
+ < img src ="./icons/icon_close.png " alt ="close ">
148
+ </ div >
149
+
150
+ < div class ="order ">
151
+ < p >
152
+ < span > Total</ span >
153
+ </ p >
154
+ < p > $560.00</ p >
155
+ </ div >
156
+
157
+ < button class ="primary-button ">
158
+ Checkout
159
+ </ button >
160
+ </ div >
161
+ </ div >
162
+ </ aside >
163
+
116
164
< script src ="./main.js "> </ script >
117
165
</ body >
118
166
</ html >
Original file line number Diff line number Diff line change 1
1
const menuEmail = document . querySelector ( '.navbar-email' ) ;
2
- const desktopMenu = document . querySelector ( '.desktop-menu' ) ;
3
2
const menuHamIcon = document . querySelector ( '.menu' ) ;
3
+ const menuCarritoIcon = document . querySelector ( '.navbar-shopping-cart' ) ;
4
+ const desktopMenu = document . querySelector ( '.desktop-menu' ) ;
4
5
const mobileMenu = document . querySelector ( '.mobile-menu' ) ;
6
+ const aside = document . querySelector ( '.product-detail' ) ;
5
7
6
8
menuEmail . addEventListener ( 'click' , toggleDesktopMenu ) ;
7
9
menuHamIcon . addEventListener ( 'click' , toggleMobileMenu ) ;
10
+ menuCarritoIcon . addEventListener ( 'click' , toggleCarritoAside ) ;
8
11
9
12
function toggleDesktopMenu ( ) {
13
+ const isAsideClosed = aside . classList . contains ( 'inactive' ) ;
14
+
15
+ if ( ! isAsideClosed ) {
16
+ aside . classList . add ( 'inactive' ) ;
17
+ }
18
+
10
19
desktopMenu . classList . toggle ( 'inactive' ) ;
11
20
}
12
21
13
22
function toggleMobileMenu ( ) {
23
+ const isAsideClosed = aside . classList . contains ( 'inactive' ) ;
24
+
25
+ if ( ! isAsideClosed ) {
26
+ aside . classList . add ( 'inactive' ) ;
27
+ }
28
+
14
29
mobileMenu . classList . toggle ( 'inactive' ) ;
15
30
}
31
+
32
+ function toggleCarritoAside ( ) {
33
+ const isMobileMenuClosed = mobileMenu . classList . contains ( 'inactive' ) ;
34
+
35
+ if ( ! isMobileMenuClosed ) {
36
+ mobileMenu . classList . add ( 'inactive' ) ;
37
+ }
38
+
39
+ aside . classList . toggle ( 'inactive' ) ;
40
+ }
Original file line number Diff line number Diff line change @@ -124,6 +124,7 @@ nav {
124
124
125
125
/* Menu en mobile */
126
126
.mobile-menu {
127
+ background-color : var (--white );
127
128
position : absolute;
128
129
top : 60px ;
129
130
padding : 24px ;
@@ -155,6 +156,85 @@ nav {
155
156
}
156
157
157
158
159
+ /* Aside (product detail y carrito) */
160
+ .product-detail {
161
+ background-color : var (--white );
162
+ width : 360px ;
163
+ padding : 0 24px ;
164
+ box-sizing : border-box;
165
+ position : absolute;
166
+ right : 0 ;
167
+ }
168
+ .title-container {
169
+ display : flex;
170
+ }
171
+ .title-container img {
172
+ transform : rotate (180deg );
173
+ margin-right : 14px ;
174
+ }
175
+ .title {
176
+ font-size : var (--lg );
177
+ font-weight : bold;
178
+ }
179
+ .order {
180
+ display : grid;
181
+ grid-template-columns : auto 1fr ;
182
+ gap : 16px ;
183
+ align-items : center;
184
+ background-color : var (--text-input-field );
185
+ margin-bottom : 24px ;
186
+ border-radius : 8px ;
187
+ padding : 0 24px ;
188
+ }
189
+ .order p : nth-child (1 ) {
190
+ display : flex;
191
+ flex-direction : column;
192
+ }
193
+ .order p span : nth-child (1 ) {
194
+ font-size : var (--md );
195
+ font-weight : bold;
196
+ }
197
+ .order p : nth-child (2 ) {
198
+ text-align : end;
199
+ font-weight : bold;
200
+ }
201
+ .shopping-cart {
202
+ display : grid;
203
+ grid-template-columns : auto 1fr auto auto;
204
+ gap : 16px ;
205
+ margin-bottom : 24px ;
206
+ align-items : center;
207
+ }
208
+ .shopping-cart figure {
209
+ margin : 0 ;
210
+ }
211
+ .shopping-cart figure img {
212
+ width : 70px ;
213
+ height : 70px ;
214
+ border-radius : 20px ;
215
+ object-fit : cover;
216
+ }
217
+ .shopping-cart p : nth-child (2 ) {
218
+ color : var (--very-light-pink );
219
+ }
220
+ .shopping-cart p : nth-child (3 ) {
221
+ font-size : var (--md );
222
+ font-weight : bold;
223
+ }
224
+ .primary-button {
225
+ background-color : var (--hospital-green );
226
+ border-radius : 8px ;
227
+ border : none;
228
+ color : var (--white );
229
+ width : 100% ;
230
+ cursor : pointer;
231
+ font-size : var (--md );
232
+ font-weight : bold;
233
+ height : 50px ;
234
+ }
235
+
236
+
237
+
158
238
@media (max-width : 640px ) {
159
239
.menu {
160
240
display : block;
@@ -168,6 +248,10 @@ nav {
168
248
.desktop-menu {
169
249
display : none;
170
250
}
251
+
252
+ .product-detail {
253
+ width : 100% ;
254
+ }
171
255
}
172
256
173
257
@media (min-width : 641px ) {
You can’t perform that action at this time.
0 commit comments