ブログ

【HTML・CSS】ラジオボタンカスタマイズの要点

ラジオボタンカスタマイズのCSSを細かくみてみる。

検索すれば様々なCSSがでてくるので、完成されたCSS例は省略。
理解重視でやってることを観察してみます。

●対象HTML


結果

1. input要素を非表示

input[type=radio] {
    display: none;
    margin: 0;
}

結果

2. label要素を調整

input[type=radio] + label {
    position: relative;
    display: inline-block;
    padding-left: 24px;
}

結果

3. label要素の疑似要素beforeでラジオボタンの外枠を作成

input[type=radio] + label:before {
    content: "";
    position: absolute;
    left: 0;
    width: 18px;
    height: 18px;
    background: #FFF;
    border: 1px solid #000;
    border-radius: 50% 50%;
}

結果

4. チェック時、labelの疑似要素afterで中心のチェックマークを作成

input[type=radio]:checked + label:after {
    content: "";
    position: absolute;
    top: 6px;
    left: 6px;
    width: 8px;
    height: 8px;
    background: #000;
    border-radius: 50% 50%;
}

結果 ※inputを2つ並べてます。