В форме у меня есть следующий общий HTML:
<input type="text" autofocus placeholder="Full name" />
<input name="yesno" type="radio" value="Yes" id="yes">
<label for="yes">Yes</label>
<input name="yesno" type="radio" value="No" id="no">
<label for="no">No</label>
В этой форме я могу TAB из текста input
в переключатели и выбрать «Да» или «Нет», используя левый /правые клавиши.
Затем я применяю некоторые стили, чтобы переключатели соответствовали дизайну:
input[type="text"] {
height: 60px;
text-indent: 1em;
}
input[type="radio"] {
display: none;
}
input[type="radio"]+label {
color: #106AA2;
background: #fff;
font-weight: 100;
text-align: center;
padding: 1em 2em;
height: auto;
font-size: 1.3em;
border: 1px solid #C5DBE8;
display: inline-block;
letter-spacing: inherit;
vertical-align: middle;
cursor: pointer;
}
input[type="radio"]:checked+label {
background: linear-gradient(#1275B2, #106AA2);
color: #fff;
}
<input type="text" autofocus placeholder="Full name" />
<input name="yesno" type="radio" value="Yes" id="yes">
<label for="yes">Yes</label>
<input name="yesno" type="radio" value="No" id="no">
<label for="no">No</label>
Однако теперь я больше не могу TAB от текста input
до переключателей.Я знаю, что это потому, что у меня есть display:none
d.
Есть ли кросс-браузерный способ, позволяющий пользователю TAB на этих переключателях?
В идеале я ищу решение, которое является чистым CSS, но я открыт для решения javascript.