Skip to content

Commit f32f839

Browse files
authored
Merge pull request #3 from prolazydev:web
style: added responsiveness to footer
2 parents d476a44 + e7b9925 commit f32f839

File tree

5 files changed

+121
-19
lines changed

5 files changed

+121
-19
lines changed

vue-m-web/src/assets/index.css

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,3 +60,13 @@
6060
.showcase-showing {
6161
opacity: 0;
6262
}
63+
64+
.main {
65+
@apply p-12
66+
}
67+
68+
@media screen and (max-width: 426px) {
69+
.main {
70+
@apply p-3 pt-12
71+
}
72+
}

vue-m-web/src/layouts/FooterLayout.vue

Lines changed: 94 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,30 @@
11
<template>
22
<Transition name="showcase" mode="out-in" :duration="500">
33
<div v-if="showcase" class="p-5 flex mt-auto w-screen">
4-
<footer class="w-4/5 h-auto m-auto p-10 flex justify-between shadow-lg hover:shadow-none transition-shadow backdrop-blur-sm">
5-
<div class="flex items-center">
6-
<p>Made with 💚 by
7-
<a class="text-gray-600 hover:text-gray-950 transition-colors" href="https://github.com/prolazydev" target="_blank" rel="noopener noreferrer">prolazydev</a>
4+
<footer>
5+
<div class="footer-left flex items-center">
6+
<p>
7+
Made with
8+
<span class="grayscale hover:grayscale-0 cursor-default transition-all">
9+
💚
10+
</span>
11+
by
12+
<a class="text-gray-600 hover:text-gray-950 transition-colors" href="https://github.com/prolazydev" target="_blank" rel="noopener noreferrer">
13+
prolazydev
14+
</a>
815
</p>
916
</div>
1017

11-
<div class="flex">
12-
<img class="w-32 h-auto grayscale hover:grayscale-0 transition-all duration-500" src="/vue-m.svg" />
13-
</div>
18+
<img class="vue-m-logo" src="/vue-m.svg" />
1419

15-
<div class="flex flex-col gap-3">
20+
<div class="hr-line-footer">
21+
<hr class="">
22+
</div>
23+
24+
<div class="footer-right">
1625
<h4 class="text-xl">Contacts</h4>
1726
<a class="text-gray-600 hover:text-gray-950 transition-colors" href="mailto:flamur.biz@hotmail.com">flamur.biz@hotmail.com</a>
18-
<div class="flex gap-3">
27+
<div class="footer-links flex gap-3">
1928
<a class="flex" href="https://www.linkedin.com/in/flamurfazliu/" target="_blank" rel="noopener noreferrer">
2029
<svg class="w-8 h-auto text-gray-600 hover:text-sky-700 transition-colors" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><rect x="0" y="0" width="20" height="20" fill="none" stroke="none" /><path fill="currentColor" d="M10 .4C4.698.4.4 4.698.4 10s4.298 9.6 9.6 9.6s9.6-4.298 9.6-9.6S15.302.4 10 .4zM7.65 13.979H5.706V7.723H7.65v6.256zm-.984-7.024c-.614 0-1.011-.435-1.011-.973c0-.549.409-.971 1.036-.971s1.011.422 1.023.971c0 .538-.396.973-1.048.973zm8.084 7.024h-1.944v-3.467c0-.807-.282-1.355-.985-1.355c-.537 0-.856.371-.997.728c-.052.127-.065.307-.065.486v3.607H8.814v-4.26c0-.781-.025-1.434-.051-1.996h1.689l.089.869h.039c.256-.408.883-1.01 1.932-1.01c1.279 0 2.238.857 2.238 2.699v3.699z"/></svg>
2130
</a>
@@ -45,4 +54,79 @@ onMounted(() => {
4554
<style>
4655
@import url('../assets/index.css');
4756
48-
</style>
57+
footer {
58+
@apply w-4/5 h-auto m-auto p-10 flex justify-between shadow-lg border-[6px] hover:shadow-none transition-shadow backdrop-blur-sm;
59+
}
60+
61+
.vue-m-logo {
62+
@apply absolute left-2/4 top-2/4 translate-x-[-50%] translate-y-[-50%] w-32 h-auto grayscale hover:grayscale-0 transition-all duration-500;
63+
}
64+
65+
.footer-right {
66+
@apply flex flex-col gap-3;
67+
}
68+
69+
.hr-line-footer {
70+
@apply w-full;
71+
display: none;
72+
}
73+
74+
.hr-line-footer hr {
75+
@apply m-auto mt-3 border-t-[6px] border-dashed;
76+
}
77+
78+
@media screen and (max-width: 855px) {
79+
footer {
80+
@apply w-full
81+
}
82+
}
83+
@media screen and (max-width: 655px) {
84+
footer {
85+
@apply flex-col justify-center items-center gap-5
86+
}
87+
88+
.vue-m-logo {
89+
@apply relative left-0 top-0 translate-x-0 translate-y-0
90+
}
91+
92+
.footer-right {
93+
@apply w-full h-[64px] flex-wrap items-baseline justify-end content-between
94+
}
95+
}
96+
@media screen and (max-width: 446px) {
97+
.hr-line-footer {
98+
display: block;
99+
}
100+
101+
footer {
102+
@apply flex-col-reverse gap-5;
103+
height: auto;
104+
}
105+
.footer-left {
106+
@apply mb-0
107+
}
108+
.footer-right {
109+
@apply h-auto
110+
}
111+
112+
}
113+
@media screen and (max-width: 298px) {
114+
115+
116+
.footer-right {
117+
@apply overflow-hidden
118+
}
119+
120+
.footer-right a {
121+
width: 100%;
122+
overflow: scroll;
123+
-ms-overflow-style: none; /* IE and Edge */
124+
scrollbar-width: none; /* Firefox */
125+
}
126+
127+
.footer-right a::-webkit-scrollbar {
128+
display: none;
129+
}
130+
}
131+
132+
</style>

vue-m-web/src/router/index.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import { createRouter, createWebHistory } from 'vue-router';
22
import Home from '../views/Home.vue';
33

4-
54
const router = createRouter({
65
history: createWebHistory(import.meta.env.BASE_URL),
76
routes: [

vue-m-web/src/style.css

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ body {
8181
top: 0;
8282
left: 0;
8383
opacity: 0;
84-
border-radius: 5px;
84+
border-width: 6px;
8585
box-shadow: 0 3px 10px rgba(0,0,0,0.25);
8686
}
8787

@@ -112,7 +112,7 @@ body {
112112
padding: 1rem !important;
113113
}
114114
.main-title h1 {
115-
font-size: 1.6rem;
115+
font-size: 1.55rem;
116116
align-self: baseline;
117117
top: 25%;
118118
}
@@ -128,18 +128,28 @@ body {
128128
@media only screen and (max-width: 412px) {
129129
.main-title {
130130
width: 90%;
131-
height: 75px;
132131
}
133132
.main-title h1 {
134-
font-size: 1.29rem;
133+
font-size: 1.55rem;
135134
top: 25%;
136135
}
137-
136+
138137
.hr-line {
139138
width: 95%;
140139
margin: 0 auto;
141140
}
142141
}
142+
@media only screen and (max-width: 394px) {
143+
.main-title {
144+
width: 275px;
145+
height: 75px;
146+
}
147+
148+
.main-title h1 {
149+
font-size: 1.25rem;
150+
}
151+
152+
}
143153

144154
/* TRANSITION GROUP */
145155
.showcase-enter-active,

vue-m-web/src/views/Home.vue

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<template>
2-
<div class="p-12" :class="(!showcase) ? 'min-h-screen' : 'main'">
2+
<div :class="(!showcase) ? 'min-h-screen' : 'main'">
33
<Transition name="showcase" :duration="duration" mode="out-in" appear>
44
<div v-if="!showcase" @click="toggleShowcase" :class="{ 'showcase-showing': showcase }"
55
class="toggle-playground">
@@ -19,7 +19,7 @@
1919
<h1 id="mainTitle"></h1>
2020
</div>
2121

22-
<div class="hr-line transition-opacity">
22+
<div class="hr-line transition-opacity">
2323
<hr class="w-4/5 m-auto mt-3 border-t-[6px] border-dashed">
2424
</div>
2525
<div class="ui-elements">
@@ -149,5 +149,4 @@ function toggleEmail() {
149149

150150
<style>
151151
@import url('../assets/index.css');
152-
153152
</style>

0 commit comments

Comments
 (0)