我不确定这是否只是 Firefox(Chrome 不这样做)的问题,但由于某种原因,在这个 Fiddler 中,粉红色的线是 Tabindex 的目标。
我知道我可以简单地添加 Tabindex=-1 来避免这种行为,但我不确定这是否是 Firefox BUG 或者我不了解 Tabindex。
Firefox 基本上以 Tabindex 为目标,该 Div 具有 Overflow: auto 或隐藏(只有 Clip 不受影响)并且高度比内部 Div 更小
是BUG还是字里行间隐藏着什么?
<Input type="text" value="first input">
<div style="overflow: auto; height: 9px">
<div style="padding-top: 10px; background-color: pink"></div>
</div>
<Input type="text" value="second input">
似乎是一个老错误:https://bugzilla.mozilla.org/show_bug.cgi?id=1069739
在这种情况下,具有溢出父元素和具有高度的子元素似乎会触发它。如果您删除
overflow: auto
或只是将该元素设为粉红色并删除子元素,似乎可以解决问题。
编辑: 可能是根据标准强制将可滚动元素识别为可聚焦元素的副产品,但这只是一个猜测。