Я пытаюсь добавить кнопку доступности «Пропустить к основному содержанию», которая получает фокус на странице, когда пользователь нажимает на вкладку.
Я хотел бы обернуть уже существующие компоненты React (Button, Card) в тег привязки, а затем, нажав на вкладку, сосредоточиться исключительно на самом внутреннем компоненте (Button) и перейти к тегу привязки href при нажатии «Enter».
Мой код выглядит следующим образом:
<a href="/get-started" className="link link--list-item link--skip-link">
<Card className="card--skip-link">
<ButtonText Icon={IconArrowRight} iconPosition="right">
Skip to main content
</ButtonText>
</Card>
</a>
Когда код стоит, состояние фокуса применяется ко всему тегу привязки. Я хотел бы применить состояние фокусировки ТОЛЬКО к кнопке (кнопка меньше, чем карта, на которой она находится).
Когда я добавляю tabIndex="-1"
к тегу привязки и tabIndex="0"
к карте и / или кнопке, элементы не выбираются вообще при переходе по вкладке.
Мой код CSS:
.link {
&--skip-link {
position: absolute;
top: -10000px;
left: -10000px;
height: 1px;
width: 1px;
text-align: left;
overflow: hidden;
&:active,
&:focus,
&:hover {
top: 10%;
left: 40%;
width: auto;
height: auto;
overflow: visible;
color: black;
}
}