Advertisement
rAthus

HTML+CSS toggle switch checkbox

May 10th, 2019
256
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 1.46 KB | None | 0 0
  1. <label class="switch">
  2.     <input type="checkbox" name="ma_belle_checkbox" value="ma_valeur" />
  3.     <span class="slider round"></span>
  4. </label>
  5. <style>
  6.     .switch {
  7.         position: relative;
  8.         display: inline-block;
  9.         width: 35px; /* largeur du switch */
  10.         height: 20px; /* hauteur du switch */
  11.     }
  12.     .switch input {
  13.         opacity: 0;
  14.         width: 0;
  15.         height: 0;
  16.     }
  17.     .slider {
  18.         position: absolute;
  19.         cursor: pointer;
  20.         top: 0;
  21.         left: 0;
  22.         right: 0;
  23.         bottom: 0;
  24.         background-color: #ccc; /* couleur de fond du switch */
  25.         -webkit-transition: .25s;
  26.         transition: .25s;
  27.     }
  28.     .slider:before {
  29.         position: absolute;
  30.         content: "";
  31.         height: 16px; /* largeur du slider = moitié de la hauteur du switch mois une marge moins une marge de 4px */
  32.         width: 16px; /* hauteur du slider = largeur du slider */
  33.         left: 2px;
  34.         bottom: 2px;
  35.         background-color: #fff;  /* couleur du slider */
  36.         -webkit-transition: .25s;
  37.         transition: .25s;
  38.     }
  39.     input:checked + .slider {
  40.         background-color: #6ce405; /* couleur de fond du switch lorsqu'il est actif */
  41.     }
  42.     input:checked + .slider:before {
  43.         -webkit-transform: translateX(15px); /* déplacement du switch lorsque c'est actif */
  44.         -ms-transform: translateX(15px); /* déplacement du switch lorsque c'est actif */
  45.         transform: translateX(15px); /* déplacement du switch lorsque c'est actif */
  46.     }
  47.     .slider.round {
  48.         border-radius: 40px; /* arrondi = largeur du switch */
  49.     }
  50.     .slider.round:before {
  51.         border-radius: 50%;
  52.     }
  53. </style>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement