在锚点内使用标题时未应用大纲样式
Outline style is not getting applied when heading is used inside anchor
在锚点“outline-style”内使用标题时未应用。
我为 parent 锚标记的 focus-visible
添加了 outline: 4px dashed darkorange;
。
它适用于自动样式 outline: 4px auto darkorange;
,但对于 实线、虚线、点线等其他样式 它不起作用
如果我遗漏了什么或者我们对此问题有任何解决方法,请告诉我
<a class="focus-visible-only" href="#">Sample Link <a>
<h1 class="focus-visible-only"> Sample Heading </h1>
<a class="focus-visible-only" href="#">
<h1> Heading inside Link </h1>
</a>
<a class="focus-visible-only" href="#">
<span> span inside Link <span>
</a>
.focus-visible-only:focus-visible {
outline: 4px dotted darkorange;
}
codepen link: https://codepen.io/vivid888/pen/xxYjNJx
由于 <h1>
本身不是交互式元素,您无法使用 Tab 键切换到它。要使其可制表,请应用 tabindex="0"
.
要使嵌套的<h1>
-属性采用focus
样式,需要使用a.focus-visible-only:focus-visible
触发焦点,然后使用选择器<h1>
应用样式。
我不知道为什么 <h1> Heading inside Link </h1>
-元素的行为如此奇怪 - 它环绕着
<a class="focus-visible-only" href="#">
<span> span inside Link <span>
</a>
元素出于某种原因。您可以只在容器 <a>
元素上应用 display: block
来更改它。
此外,如果您不想 link 占满整个宽度,您可以使用 max-width: fit-content
。
.focus-visible-only:focus-visible {
outline: 2px dotted darkorange;
}
a.focus-visible-only:focus-visible h1 {
outline: 2px dotted darkorange;
}
a:last-of-type {
display: block;
}
a,
h1,
span {
max-width: fit-content;
}
<a class="focus-visible-only" href="#">Sample Link <a>
<h1 class="focus-visible-only" tabindex="0"> Sample Heading </h1>
<a class="focus-visible-only" href="#">
<h1>Heading inside Link </h1>
</a>
<a class="focus-visible-only" href="#">
<span>span inside Link </span>
</a>
focus-visible
添加了 outline: 4px dashed darkorange;
。
它适用于自动样式 outline: 4px auto darkorange;
,但对于 实线、虚线、点线等其他样式 它不起作用
如果我遗漏了什么或者我们对此问题有任何解决方法,请告诉我
<a class="focus-visible-only" href="#">Sample Link <a>
<h1 class="focus-visible-only"> Sample Heading </h1>
<a class="focus-visible-only" href="#">
<h1> Heading inside Link </h1>
</a>
<a class="focus-visible-only" href="#">
<span> span inside Link <span>
</a>
.focus-visible-only:focus-visible {
outline: 4px dotted darkorange;
}
codepen link: https://codepen.io/vivid888/pen/xxYjNJx
由于 <h1>
本身不是交互式元素,您无法使用 Tab 键切换到它。要使其可制表,请应用 tabindex="0"
.
要使嵌套的<h1>
-属性采用focus
样式,需要使用a.focus-visible-only:focus-visible
触发焦点,然后使用选择器<h1>
应用样式。
我不知道为什么 <h1> Heading inside Link </h1>
-元素的行为如此奇怪 - 它环绕着
<a class="focus-visible-only" href="#">
<span> span inside Link <span>
</a>
元素出于某种原因。您可以只在容器 <a>
元素上应用 display: block
来更改它。
此外,如果您不想 link 占满整个宽度,您可以使用 max-width: fit-content
。
.focus-visible-only:focus-visible {
outline: 2px dotted darkorange;
}
a.focus-visible-only:focus-visible h1 {
outline: 2px dotted darkorange;
}
a:last-of-type {
display: block;
}
a,
h1,
span {
max-width: fit-content;
}
<a class="focus-visible-only" href="#">Sample Link <a>
<h1 class="focus-visible-only" tabindex="0"> Sample Heading </h1>
<a class="focus-visible-only" href="#">
<h1>Heading inside Link </h1>
</a>
<a class="focus-visible-only" href="#">
<span>span inside Link </span>
</a>