search

Home  >  Q&A  >  body text

How to center align a toggle button on a div element?

I want to center align the toggle button on my element "Client_name". I created another div but I can't get the button to go down and position it further to the right. Do you have any ideas?

jsfiddle link is below

https://jsfiddle.net/6cyuwxvf/

.switch {
  position: relative;
  display: inline-block;
  width: 73px;
  height: 32px;
}

.switch input {display:none;}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #CD3B1B;
  -webkit-transition: .4s;
  transition: .4s;
   border-radius: 34px;
}

.slider:before {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  -webkit-transition: .4s;
  transition: .4s;
  border-radius: 50%;
}

input:checked + .slider {
  background-color: #89C445;
}

input:focus + .slider {
  box-shadow: 0 0 1px #89C445;
}

input:checked + .slider:before {
  -webkit-transform: translateX(86px);
  -ms-transform: translateX(36px);
  transform: translateX(38px);
}

.button10 {
  background-color: white; 
  color: black; 
  border: 2px solid;
  width: 500px;
  height: 50px;
  
}

.div-permission {
  display: table-cell;
  vertical-align: middle;
  height: 45px;
  width: 900px;
  border: 1px solid red;
}

P粉894008490P粉894008490243 days ago398

reply all(1)I'll reply

  • P粉198749929

    P粉1987499292024-03-28 11:58:38

    You can use display: flex; and align-items: center; for vertical alignment and to add some margin to the switch.

    .switch {
      position: relative;
      display: inline-block;
      width: 73px;
      height: 32px;
      margin-left: 0.25rem;
    }
    
    .switch input {
      display: none;
    }
    
    .slider {
      position: absolute;
      cursor: pointer;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background-color: #CD3B1B;
      -webkit-transition: .4s;
      transition: .4s;
      border-radius: 34px;
    }
    
    .slider:before {
      position: absolute;
      content: "";
      height: 26px;
      width: 26px;
      left: 4px;
      bottom: 4px;
      background-color: white;
      -webkit-transition: .4s;
      transition: .4s;
      border-radius: 50%;
    }
    
    input:checked+.slider {
      background-color: #89C445;
    }
    
    input:focus+.slider {
      box-shadow: 0 0 1px #89C445;
    }
    
    input:checked+.slider:before {
      -webkit-transform: translateX(86px);
      -ms-transform: translateX(36px);
      transform: translateX(38px);
    }
    
    .button10 {
      background-color: white;
      color: black;
      border: 2px solid;
      width: 500px;
      height: 50px;
    }
    
    .div-permission {
      display: flex;
      align-items: center;
      height: 45px;
      width: 900px;
      border: 1px solid red;
    }
    <div class="div-permission">
      <input type="text" class="button10" placeholder="Client_name" />
    
      <label class="switch">
        <input type="checkbox" id="togBtn" onclick="myFunction()" />
        <div class="slider round"></div>
      </label>
    
      <input type="submit" id="myDIV" style="display: none;" name="valider" onclick="style.display = 'none'" />
    </div>

    reply
    0
  • Cancelreply