<section>
  <h1>SVG CheckBox</h1>
  <h2>Fill CheckBox</h2>
  
  <div class="form-section">
    <form class="form-target">
      <ul>
        <li>
          <input type="checkbox" id="check-00" />
          <label for="check-00">Drawing a check box
          <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
	 y="0px" viewBox="0 0 32 32" style="enable-background:new 0 0 32 32;" xml:space="preserve">
<path class="st0" d="M3.9,9.7c2.4-2.7,5-5.4,8.1-7.1C8.4,7.8,4.8,13,1.1,18.3c5.7-5.8,11.6-11.5,18.4-16C14.8,9.5,10,16.7,6,24.4
		c4.7-5.2,9.9-9.9,15.6-14C16.9,16.3,12.2,22.2,7.4,28c4.4-4.8,9.6-8.7,14.7-12.7c-3.2,4.1-6.3,8.3-9.3,12.5
		c4.7-5.1,9.8-9.8,15.4-13.9c-3.2,4.3-6.5,8.6-9.7,12.9c3.6-3.2,7.2-6.4,11.3-8.9c-2.9,4.2-5.8,8.4-8.7,12.6
		c2.4-1.7,4.8-3.5,7.5-4.7c0,0.4-0.1,0.8-0.4,1.1c0.5-0.3,1-0.6,1.6-0.8"/>
</svg>
          </label>
        </li>
        
        <li>
          <input type="checkbox" id="check-01" />
          <label for="check-01">Drawing a check box
          <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
	 y="0px" viewBox="0 0 32 32" style="enable-background:new 0 0 32 32;" xml:space="preserve">
<path class="st0" d="M3.9,9.7c2.4-2.7,5-5.4,8.1-7.1C8.4,7.8,4.8,13,1.1,18.3c5.7-5.8,11.6-11.5,18.4-16C14.8,9.5,10,16.7,6,24.4
		c4.7-5.2,9.9-9.9,15.6-14C16.9,16.3,12.2,22.2,7.4,28c4.4-4.8,9.6-8.7,14.7-12.7c-3.2,4.1-6.3,8.3-9.3,12.5
		c4.7-5.1,9.8-9.8,15.4-13.9c-3.2,4.3-6.5,8.6-9.7,12.9c3.6-3.2,7.2-6.4,11.3-8.9c-2.9,4.2-5.8,8.4-8.7,12.6
		c2.4-1.7,4.8-3.5,7.5-4.7c0,0.4-0.1,0.8-0.4,1.1c0.5-0.3,1-0.6,1.6-0.8"/>
</svg>
          </label>
        </li>
        
        <li>
          <input type="checkbox" id="check-02" />
          <label for="check-02">Drawing a check box
          <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
	 y="0px" viewBox="0 0 32 32" style="enable-background:new 0 0 32 32;" xml:space="preserve">
<path class="st0" d="M3.9,9.7c2.4-2.7,5-5.4,8.1-7.1C8.4,7.8,4.8,13,1.1,18.3c5.7-5.8,11.6-11.5,18.4-16C14.8,9.5,10,16.7,6,24.4
		c4.7-5.2,9.9-9.9,15.6-14C16.9,16.3,12.2,22.2,7.4,28c4.4-4.8,9.6-8.7,14.7-12.7c-3.2,4.1-6.3,8.3-9.3,12.5
		c4.7-5.1,9.8-9.8,15.4-13.9c-3.2,4.3-6.5,8.6-9.7,12.9c3.6-3.2,7.2-6.4,11.3-8.9c-2.9,4.2-5.8,8.4-8.7,12.6
		c2.4-1.7,4.8-3.5,7.5-4.7c0,0.4-0.1,0.8-0.4,1.1c0.5-0.3,1-0.6,1.6-0.8"/>
</svg>
          </label>
        </li>
      </ul>
    </form>
 </div>
</section>
html,body{
  height:100%;
  display: block;
}

body{
   font-family: 'Comfortaa', cursive;
}

h1 {
  text-align: center;
  letter-spacing: 2px;
  font-weight: 700;
  font-size:50px;
  margin-bottom:0px;
}

h2{
  text-align: center;
  font-size:20px;
  font-weight: 400;
  margin-top:5px;
}

.form-section{
  width: 400px;
  margin: 40px auto 0px auto;
}

ul li{
  list-style: none;
  color: #000;
  font-size:25px;
  position: relative;
  margin-bottom: 25px;
}

input[type="checkbox"]{
  display: none !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: inline-block;
  width: 35px;
  height: 35px;
  background: #fff;
  vertical-align: top;
  position: relative;
  top: -5px;
  margin-right: 10px;
  box-sizing: border-box;
  border: 3px solid #999;
  border-radius: 3px;
  transition: border 0.3s;
  &:focus{
    outline:rgba(0,0,0,0);
  }
  &:checked{
    border: 3px solid #000;
  }
  &:checked ~ label{
    color: #000;
  }
  &:checked ~ label:before{
    border: 3px solid #000;
  }
  &:checked ~ label svg path{
    stroke-dashoffset:0;
    stroke-opacity:1;
  }
}

label{
  cursor: pointer;
  color: #999;
  transition: color 0.3s;
}

label:before{
  content : '';
  display: inline-block;
  width: 28px;
  height: 28px;
  margin-right: 15px;
  position: relative;
  top: 7px;
  border: 3px solid #999;
  border-radius: 3px;
}

svg{
  width: 24px;
  height: 24px;
  left : 6px;
  top : 11px;
  position: absolute;
  z-index: 1;
  path{
    fill: none;
    stroke: #000;
    stroke-linejoin:round;
    stroke-linecap:round;
    stroke-dasharray: 250;
    stroke-dashoffset:250;
    stroke-opacity:0;
    stroke-width:3px;
    transition: stroke-dashoffset 0.3s ease, stroke-opacity 0.3s;
  }
}
View Compiled

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js