<form>
<label>
<input class="checkbox" type="checkbox"/>
個人情報の取り扱いに同意する
</label>
<input class="button" type="submit" value="送信する"></b>
</form>
form {
text-align: center;
padding-top: 20px;
}
/* 同意にチェックがある場合に送信ボタンを活性化 */
form:has(input:checked) input[type=submit] {
border: #000 solid 1px;
color: #333;
cursor: pointer;
pointer-events: auto;
/* 活性時はフォーカス状態を有効にする */
&:focus {
visibility: visible;
}
/* 活性時のホバー */
&:hover {
background: #000;
color: #fff;
}
}
label {
display: inline-flex;
align-item: center;
column-gap: 10px;
}
input[type=checkbox] {
width: 20px;
}
/* 送信ボタン デフォルトで非活性 */
input[type=submit] {
display: block;
margin: 20px auto 0;
background-color: #efefef;
border: #aaa solid 1px;
border-radius: 10px;
color: #aaa;
padding: 10px 80px;
pointer-events: none;
transition: background-color .3s, color .5s;
/* 非活性時はフォーカス状態を外す */
&:focus {
visibility: hidden;
}
}
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.