InfoHeap
Tech
Navigation
  • Home
  • Tutorials
    • CSS tutorials & examples
    • CSS properties
    • Javascript cookbook
    • Linux/Unix Command Line
    • Mac
    • PHP
      • PHP functions online
      • PHP regex
    • WordPress
  • Online Tools
    • Text utilities
    • Online Lint Tools
search

CSS

    CSS selectors

    • CSS selectors

    CSS properties

    • CSS properties

    CSS cookbooks

    • !important annotation
    • Align div in center horizontally
    • Align div in center vertically
    • Align multiple divs horizontally
    • Align text in center horizontally
    • CSS - drop cap effect
    • CSS - enlarge image on hover
    • CSS - round toggle switch using checkbox and label
    • CSS automatic table row numbering
    • CSS circle and oval
    • CSS clearfix - clear float automatically using ::after
    • CSS counters
    • CSS nested counters
    • CSS3 gradients
    • Create CSS triangles
    • First letter capital and bigger
    • How to display text on image using css
    • Install sass on Mac or Linux using ruby gem
    • Place a div in bottom right corner of browser
    • Test site css, javascript, html in old IEs
    • csslint
    • inherit value
    • initial value
    • inline-block and baseline alignment
    • margin collapsing
    • node-sass quick start tutorial on Linux and Mac
    • unset value
    • web typography
     
    • Home
    • > Tutorials
    • > CSS

    CSS – round toggle switch using checkbox and label

    on Sep 25, 2016

    Css round toggle switch can be implemented using html checkbox and a label tag which appears after it. The high level approach steps are:

    1. We make the checkbox invisible using display:none.
    2. The label uses attribute for=”cb_id” so that it handles the click for the checkbox. Also note that label appears immediately after checkbox.
    3. We draw a rectangle on label element which acts as background for toggle switch.
    4. We use :after to draw a circle which will move left or right.
    5. Using :checked style, we move the circle change background color of toggle switch.

    Example

    <style>
    input.toggle-round {
      display:none;
    }
    input.toggle-round + label {
      display: block;
      position: relative;
      cursor: pointer;
    }
    input.toggle-round + label {
      padding: 1px;
      width: 100px;
      height: 50px;
      background-color: #ddd;
      border-radius: 50px;
      border: 1px solid #ccc;
    }
    input.toggle-round + label:after {
      display: block;
      position: absolute;
      content: "";
      width: 50px; height: 50px;
      background-color: white;
      border-radius: 100%;
      box-shadow: 0 2px 3px #888;
      transition: margin 0.5s;
    }
    input.toggle-round:checked + label {
      background-color: lightblue;
    }
    input.toggle-round:checked + label:after {
      margin-left: 50px;
    }
    </style>
    
    <input id="cb_id" class="toggle-round" type="checkbox">
    <label for="cb_id"></label>
    refresh done
    try it online

    Suggested posts:

    1. Monitor apache using mod_status on Ubuntu
    2. Install sass on Mac or Linux using ruby gem
    3. Css :first-child selector – first child element
    4. CSS border-width – set element border width of four sides
    5. CSS selector specificity
    6. CSS placeholder style
    7. Install nginx and php in docker ubuntu container
    8. CSS :enabled :disabled – style of enable and disabled elements
    Share this article: share on facebook share on linkedin tweet this submit to reddit
    Posted in Tutorials | Tagged CSS, CSS cookbook, Tutorials
    • Browse content
    • Article Topics
    • Article archives
    • Contact Us
    Popular Topics: Android Development | AngularJS | Apache | AWS and EC2 | Bash shell scripting | Chrome developer tools | Company results | CSS | CSS cookbook | CSS properties | CSS Pseudo Classes | CSS selectors | CSS3 | CSS3 flexbox | Devops | Git | HTML | HTML5 | Java | Javascript | Javascript cookbook | Javascript DOM | jQuery | Kubernetes | Linux | Linux/Unix Command Line | Mac | Mac Command Line | Mysql | Networking | Node.js | Online Tools | PHP | PHP cookbook | PHP Regex | Python | Python array | Python cookbook | SEO | Site Performance | SSH | Ubuntu Linux | Web Development | Webmaster | Wordpress | Wordpress customization | Wordpress How To | Wordpress Mysql Queries | InfoHeap Money

    Copyright © 2025 InfoHeap.

    Powered by WordPress