Open Bug 1133404 Opened 7 years ago Updated 7 years ago

element without tabindex can be tabbed into

Categories

(Firefox :: Keyboard Navigation, defect)

35 Branch
x86_64
Linux
defect
Not set
normal

Tracking

()

UNCONFIRMED

People

(Reporter: tristan, Unassigned)

Details

(Whiteboard: INVALID?)

User Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0
Build ID: 20150112203201

Steps to reproduce:

Created a layout with some elements with tabindex="0" and an adjacent element with ellipsis.

Test case here:
   http://jsfiddle.net/mtww0r1u/



Actual results:

The element with ellipsis can be tabbed into, even though it does not set any tabindex.

Note that this only happens when the text actually has ellipsis, if the text is small enough for the ellipsis to not occur (no overflow), then the problem does not happen.


Expected results:

The text with ellipsis should not be reachable in keynav, as it did not specify any tabindex, nor is it a special element which should participate in keynav by default.

Note also that this can be worked around by explicitly setting tabindex="-1" on the element which should not be reachable by keynav, of course it's not a desirable workaround, though.
Component: Untriaged → Keyboard Navigation
"overflow-x: hidden" means 'overflow-y' will be 'auto' which is potentially scrollable
and we include elements that are potentially scrollable in the tabbing order.
(making it "overflow: hidden" instead should exclude it)

IIRC, the current behavior is intentional because we didn't want tabbing to depend on
actual overflow or not (in the direction which is 'auto').
Whiteboard: INVALID?
Interesting, I had no clue that setting overflow-x had some kind of implied side
effect on overflow-y, should overflow-y not be explicitly set (not very intuitive,
but that can be said for the majority of DOM api anyway).

That said, I have no objection to this fwiw, explicitly setting overflow-y:hidden
on my ellipsis text fixes this nicely.
You need to log in before you can comment on or make changes to this bug.