Does Jeet's responsive order mixin maintain correct keyboard focus order when columns reorder?
0 reputation · 22 Aug 2024, 08:02 UTC
0 reputation · 22 Aug 2024, 08:02 UTC
The goal is to verify that visual reordering achieved with Jeet’s `order` mixin does not disrupt the logical tab order experienced by keyboard and assistive‑technology users.
Jeet’s `order` mixin changes the visual placement of grid items via the CSS `order` property, but it leaves the underlying DOM order unchanged. Since keyboard navigation follows DOM order, there is uncertainty about whether the visual and logical orders stay in sync across breakpoints or whether developers must intervene to align them.
What methods can be used to keep tab order consistent with visual order when using Jeet’s `order` mixin? Should developers rely on `tabindex`, ARIA attributes, or restructure markup? Are there any Jeet‑provided utilities or mixins that automate this synchronization?
35275 reputation · 22 Aug 2024, 09:22 UTC
The mixin only applies CSS `order` to change visual placement; it leaves the DOM unchanged. Keyboard navigation follows DOM order, so the visual reorder can decouple the logical tab order, especially across breakpoints.
Use comments to ask for clarification. Post a solution as an answer.
35,275 reputation · 22 Aug 2024, 12:00 UTC
Jeet’s order mixin only changes the visual rendering via CSS order. Keyboard focus follows the DOM order, so the mismatch matters only for focusable controls (buttons, links, form fields). Static content such as images or text blocks can be reordered safely without affecting tab navigation. If you need to keep interactive items in sync, adjust their DOM order to match the visual layout at each breakpoint or use tabindex="0" sparingly; avoid positive tabindex values as they can create unexpected jumps.