<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width"> <title>Custom Switch</title> <style> .container { display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100vh; } </style> </head> <body> <div class="container"> <h1>Custom Switch</h1> <p>This is project demonstrating turning a checkbox into a switch.</p> <br> <div class="switch-container"> <h2>Basic Checkbox</h2> <label> <input type="checkbox" id="switch-1"> Basic Checkbox with no styling </label> <h2>Custom Switch</h2> <label> <input type="checkbox" id="switch-2"> A Checkbox to look like a switch using CSS </label> </div> </div> <style> #switch-2{ appearance: none; position: relative; display: inline-block; background: lightgray; height: 1.65rem; width: 2.75rem; vertical-align: middle; border-radius: 2rem; box-shadow: 0px 1px 3px #0003 inset; transition: 0.25s linear background; } #switch-2::before { content: ''; display: block; width: 1.25rem; height: 1.25rem; background: #fff; border-radius: 1.2rem; position: absolute; top: 0.2rem; left: 0.2rem; box-shadow: 0px 1px 3px #0003; transition: 0.25s linear transform; transform: translateX(0rem); } #switch-2:checked { background: green; } #switch-2:checked::before { transform: translateX(1rem); } </style> </body> </html>