└── dark light form
├── assets
├── imgs
│ ├── facebook.png
│ ├── github.png
│ └── google.png
├── js
│ └── script.js
└── css
│ └── style.css
└── index.html
/dark light form/assets/imgs/facebook.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Larissakich/dark_light_form/HEAD/dark light form/assets/imgs/facebook.png
--------------------------------------------------------------------------------
/dark light form/assets/imgs/github.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Larissakich/dark_light_form/HEAD/dark light form/assets/imgs/github.png
--------------------------------------------------------------------------------
/dark light form/assets/imgs/google.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Larissakich/dark_light_form/HEAD/dark light form/assets/imgs/google.png
--------------------------------------------------------------------------------
/dark light form/assets/js/script.js:
--------------------------------------------------------------------------------
1 | const mode = document.getElementById('mode_icon');
2 |
3 | mode.addEventListener('click', () => {
4 | const form = document.getElementById('login_form');
5 |
6 | if(mode.classList.contains('fa-moon')) {
7 | mode.classList.remove('fa-moon');
8 | mode.classList.add('fa-sun');
9 |
10 | form.classList.add('dark');
11 | return ;
12 | }
13 |
14 | mode.classList.remove('fa-sun');
15 | mode.classList.add('fa-moon');
16 |
17 | form.classList.remove('dark');
18 | });
--------------------------------------------------------------------------------
/dark light form/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 | Login Dark/Light Mode
12 |
13 |
14 |
15 |
88 |
89 |
90 |
91 |
92 |
93 |
--------------------------------------------------------------------------------
/dark light form/assets/css/style.css:
--------------------------------------------------------------------------------
1 | @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400&display=swap');
2 |
3 | /** Variables - colors **/
4 | :root {
5 | /* Light */
6 | --color-light-50: #f8fafc;
7 |
8 | /* Dark */
9 | --color-dark-50: #797984;
10 | --color-dark-100: #312d37;
11 | --color-dark-900: #000;
12 |
13 | /* Purple */
14 | --color-purple-50: #7c3aed;
15 | --color-purple-100: #a855f7;
16 | --color-purple-200: #bf46ef;
17 |
18 | /* Gradient */
19 | --color-gradient: linear-gradient(90deg, var(--color-purple-50), var(--color-purple-100), var(--color-purple-200));
20 | }
21 |
22 | /* General */
23 | * {
24 | font-family: 'Poppins', sans-serif;
25 | margin: 0;
26 | padding: 0;
27 | box-sizing: border-box;
28 | }
29 |
30 | #container {
31 | height: 100vh;
32 | width: 100%;
33 | display: flex;
34 | justify-content: center;
35 | align-items: center;
36 | background: var(--color-gradient);
37 | }
38 |
39 | #login_form {
40 | display: flex;
41 | flex-direction: column;
42 | height: fit-content;
43 | background-color: var(--color-light-50);
44 | padding: 30px 40px;
45 | border-radius: 8px;
46 | gap: 30px;
47 | box-shadow: 5px 5px 8px rgba(0, 0, 0, 0.336);
48 | animation: dark-to-light-background 0.3s ease-in-out;
49 | }
50 |
51 | /* Form Header */
52 | #form_header {
53 | display: flex;
54 | align-items: center;
55 | justify-content: space-between;
56 | }
57 |
58 | #form_header h1 {
59 | font-size: 40px;
60 | position: relative;
61 | }
62 |
63 | #form_header h1::before {
64 | position: absolute;
65 | content: '';
66 | width: 40%;
67 | height: 3px;
68 | background-color: var(--color-purple-50);
69 | bottom: 10px;
70 | border-radius: 5px;
71 | }
72 |
73 | #mode_icon {
74 | cursor: pointer;
75 | font-size: 20px;
76 | }
77 |
78 | /* Social Media */
79 | #social_media {
80 | display: flex;
81 | justify-content: space-around;
82 | }
83 |
84 | #social_media img {
85 | width: 35px;
86 | }
87 |
88 | #social_media img:hover {
89 | transform: scale(1.2);
90 | }
91 |
92 | /* Inputs */
93 | #inputs {
94 | display: flex;
95 | align-items: center;
96 | justify-content: center;
97 | flex-direction: column;
98 | gap: 20px;
99 | }
100 |
101 | .input-box>label {
102 | font-size: 14px;
103 | color: var(--color-dark-50);
104 | }
105 |
106 | .input-field {
107 | display: flex;
108 | align-items: center;
109 | gap: 15px;
110 | padding: 3px;
111 | border-bottom: 1px solid var(--color-purple-50);
112 | cursor: text;
113 | }
114 |
115 | .input-field i {
116 | font-size: 18px;
117 | cursor: text;
118 | color: var(--color-dark-900);
119 | }
120 |
121 | .input-field input {
122 | border: none;
123 | width: 260px;
124 | background-color: transparent;
125 | font-size: 18px;
126 | padding: 0px 5px;
127 | }
128 |
129 | .input-field input:focus {
130 | outline: none;
131 | }
132 |
133 | /* Forgot password */
134 | #forgot_password a {
135 | text-decoration: none;
136 | color: var(--color-dark-50);
137 | font-size: 12px;
138 | }
139 |
140 | #forgot_password a:hover {
141 | color: var(--color-purple-50);
142 | }
143 |
144 | /* Login Button */
145 | #login_button {
146 | border: none;
147 | background: var(--color-gradient);
148 | padding: 7px;
149 | border-radius: 3px;
150 | color: var(--color-light-50);
151 | font-weight: bold;
152 | font-size: 18px;
153 | cursor: pointer;
154 | }
155 |
156 | #login_button:hover {
157 | transform: scale(1.05);
158 | }
159 |
160 | /* Dark Mode */
161 | .dark#login_form {
162 | color: var(--color-light-50);
163 | background-color: var(--color-dark-100);
164 | animation: light-to-dark-background 0.3s ease-in-out;
165 | }
166 |
167 | .dark#login_form .input-field input,
168 | .dark#login_form .input-field i {
169 | color: var(--color-light-50);
170 | }
171 |
172 | @keyframes dark-to-light-background {
173 | 0% {
174 | background-color:var(--color-dark-100);
175 | }
176 | 100.0% {
177 | background-color:var(--color-light-50);
178 | }
179 | }
180 |
181 | @keyframes light-to-dark-background {
182 | 0% {
183 | background-color:var(--color-light-50);
184 | }
185 | 100.0% {
186 | background-color:var(--color-dark-100);
187 | }
188 | }
--------------------------------------------------------------------------------