퍼블리싱 로그/HTML CSS
input style / input[type=checkbox/radio] 디자인 적용
AI랑 노는 웹 퍼블리셔
2024. 3. 7. 10:00
반응형
HTML
<!-- checkbox -->
<ul class="list-btn">
<li>
<input type="checkbox" id="chk1-1" name="chk1" />
<label for="chk1-1">chk1</label>
</li>
<li>
<input type="checkbox" id="chk1-2" name="chk1" />
<label for="chk1-2">chk2</label>
</li>
<li>
<input type="checkbox" id="chk1-3" name="chk1" />
<label for="chk1-3">chk3</label>
</li>
<li>
<input type="checkbox" id="chk1-4" name="chk1" />
<label for="chk1-4">chk4</label>
</li>
</ul>
<!-- radio -->
<ul class="list-btn">
<li>
<input type="radio" id="chk1-11" name="radio1" />
<label for="chk1-11">radio1</label>
</li>
<li>
<input type="radio" id="chk1-22" name="radio1" />
<label for="chk1-22">radio2</label>
</li>
<li>
<input type="radio" id="chk1-33" name="radio1" />
<label for="chk1-33">radio3</label>
</li>
<li>
<input type="radio" id="chk1-44" name="radio1" />
<label for="chk1-44">radio4</label>
</li>
</ul>
CSS
input[type="checkbox"],
input[type="radio"] {
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
margin: 0;
padding: 0;
-webkit-appearance: none;
-webkit-border-radius: 0;
outline: none;
}
.list-btn {
list-style: none;
display: flex;
flex-wrap: wrap;
margin: -0.375rem -0.1875rem;
}
.list-btn > li {
position: relative;
margin: 0.375rem 0.1875rem;
}
.list-btn > li > input[type="checkbox"],
.list-btn > li > input[type="radio"] {
position: absolute;
width: 100%;
height: 100%;
}
.list-btn > li > input[type="checkbox"] + label,
.list-btn > li > input[type="radio"] + label {
background: #fff;
padding: 0.375rem 0.875rem;
font-size: 0.875rem;
border: 1px solid #e6e6e6;
/*border-radius: 1.25rem;*/
color: #202020;
width: auto;
text-align: center;
display: inline-block;
}
.list-btn > li > input[type="checkbox"]:checked + label,
.list-btn > li > input[type="radio"]:checked + label {
background: #4130df;
border: 1px solid #4130df;
color: #fff;
}
코드확인
반응형