Toggle Swith Button o Botón deslizante
Un toggle switch es un interruptor de dos posiciones, que en las páginas web se simula mediante una especie de círculo que se desplaza entre dos posiciones: encendido apagado.
Este tipo de control se puede crear utilizando solo HTML y estilos CSS. Si quieres que haga alguna acción entonces es más que probable que si necesites Javascript, depende de la acción que quieras que genere
Aunque ya tienes una forma de crearlo aquí tienes otra manera de hacerlo, hay una diferencia muy sutil con la versión anterior: ahora se simula un interruptor deslizante donde el fondo del interruptor también es deslizante para mostrar su color de encendido o apagado, en lugar de un simple cambio de color.
Pero la base sigue siendo la misma: botón tipo checkbox que puede ser detectado por CSS mediante la pseudo clase :checked
El código HTML
Para el ejemplo que ilustre este efecto usamos un código html de lo más simple: un bloque div y dentro un control input tipo checkbox con su correspondiente elemento label.
El bloque es el contenedor y le asignaremos una clase toggleContainer, el input va a quedar invisible con la clase toggle y e labal de este input con la clase switch va a se quien active o desactivo el checkbox (recuerda que va a ser invisible)
Estilos CSS
La clave para este tipo de aplicacones está en el botón input que puede estar activado (checked) o desactivado (recuerda que es un checkbox). Esto lo detecta CSS mediante la pseudo clase :checked.
El selector .toggle:checked será el aplicado cuando el input esté seleccionado.
El elemento siguiente a .toggle lo seleccionamos con el signo + es precisamente la etiqueta o label y le asignamos un pseudo elemento ::before para contener el botón que se desplazará al pulsar. Al mismo tiempo que se desplaza cambia el color de fondo del botón.
A estos cambios se les aplica un propiedad transition para que se realicen de forma gradual.
Con los comentarios debe quedar claro: al pulsar el input check, el botón swtich se ensancha y se va viendo como su color de fondo avanza como si se desplazara, al moverse también lo hace el estremo negro. Mira que este extremo está definido mediante switch:before y se coloca en el extremo de switch. De esta manera parece como si el botón se despaza y deja ver el fondo del color que corresponda a encendido o apagado. Si te gusta compártelo.