Я работаю над сайтом One Pager, где у меня есть меню навигации. Я хотел бы иметь вход radio
, связанный с нажатым a
, чтобы применить CSS к активному radio
.Ссылка внутри Ярлык не устанавливает фокус на атрибутном входе
Как вы увидите, CSS применяется, когда я нажимаю на radio
, но не тогда, когда я нажимаю на ссылку. Я знаю, что могу сделать это с помощью JavaScript, но я стараюсь избегать роста моей базы кода.
Второй раздел фрагмента - это то, чего я хотел бы достичь, но с тегом a
в label
. radio
будет скрыт, поэтому нажатие на radio
не является приемлемым ответом. Как я могу сделать тег a
и активировать тег input
?
input[type=radio]:checked + label {
color:red;
background-color:green;
}
.working {
visibility: hidden;
width:0;
}
<html>
<body>
<div>
<h2>Not working with a tag</h2>
<div>
<input id="a" type="radio" name="menu1" value="a"/>
<label for="a"><a href="#">Input 1</a></label>
</div>
<div>
<input id="b" type="radio" name="menu1" value="b"/>
<label for="b"><a href="#">Input 2</a></label>
</div>
</div>
<div>
<h2>Expected result (without a, it doesn't work)</h2>
<div>
<input class="working" id="c" type="radio" name="menu2" value="a"/>
<label for="c">Input 1</label>
</div>
<div>
<input class="working" id="d" type="radio" name="menu2" value="b"/>
<label for="d">Input 2</label>
</div>
</div>
</body>
</html>
Я выше, потому что я думал, что это сработало, но оно не работает. Он меняет стиль, но навигация для '' не работает. – TopinFrassi