└── 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 |
16 | 17 |
18 |

Login

19 | 20 |
21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | Google logo 32 | 33 | 34 | 35 | 36 | 37 | 38 |
39 | 40 | 41 |
42 | 43 |
44 | 51 |
52 | 53 | 54 |
55 | 62 |
63 | 64 | 65 |
66 | 73 | 74 | 75 | 80 |
81 |
82 | 83 | 84 | 87 |
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 | } --------------------------------------------------------------------------------