Tab-sorrend
A teszt azt nézi, hogy van-e nullánál nagyobb tabindex az oldalon, ami felülírja a természetes Tab-sorrendet. Töröld ezeket az értékeket.
Aki billentyűzettel jár be egy oldalt, a Tab billentyűvel lépked az elemek között. A természetes sorrend a HTML forrásának sorrendje, ami általában megegyezik azzal, ahogy az elemek a képernyőn követik egymást. A tabindex attribútumnak nullánál nagyobb értéke ezt felülírja: az ilyen elemek előbb következnek, mint a többi, a fókusz pedig össze-vissza ugrál az oldalon. A WCAG 2.2 2.4.3-as sikerességi feltétele (Focus Order, A szint) azt kéri, hogy a fókusz sorrendje őrizze meg a jelentést és a használhatóságot.
Hogyan mérjük
Szekció neve “Hogyan mérjük”A riport egy valódi böngészőben betölti az oldalt, és lefuttatja a Lighthouse tabindex auditját (az axe-core szabálya; a riport Lighthouse 13.6 és axe-core 4.14 változattal dolgozik). A szabály minden tabindex attribútummal rendelkező elemet megvizsgál.
- Megfelelő: van
tabindexattribútum az oldalon, és mindegyik értéke 0 vagy negatív. - Hiba: legalább egy elemen a
tabindexértéke nullánál nagyobb. - Nem értékelhető: az oldalon sehol nincs
tabindexattribútum, vagyis nincs mit vizsgálni. Ez nem hiba: a természetes sorrend érvényesül.
Figyelmeztető szint nincs; a teszt súlyossága alacsony.
Eltérés a szabványtól: a riport szűkebb, mint a WCAG. A pozitív tabindex az axe-core-ban jó gyakorlati szabály (best practice), nem külön WCAG-hiba, és a mérés csak ezt az egy jelet nézi. Azt nem vizsgálja, hogy a fókusz tényleg a képernyőn látható sorrendben halad-e: a CSS-sel átrendezett (például order vagy abszolút pozícionált) tartalom, vagy a JavaScripttel mozgatott fókusz sorrendje a teszten kívül van. Az MDN is azt írja a tabindex oldalán, hogy a pozitív értékeket kerülni kell, mert az elemek természetes sorrendjét felülírja.
Hogyan javítsd
Szekció neve “Hogyan javítsd”Töröld a nullánál nagyobb tabindex értékeket (tabindex="1", tabindex="2", …), és rendezd úgy a HTML forrását, hogy az elemek a kívánt sorrendben kövessék egymást. A tabindex két értékének van helye:
tabindex="0": egy alapból nem fókuszálható elemet (például egy egyedi vezérlőt) beemel a természetes sorrendbe. Lehetőleg inkább eleve fókuszálható elemet használj (<button>,<a href>).tabindex="-1": az elem programból (JavaScriptfocus()) fókuszálható, de a Tab nem lép rá.
<!-- előtte: a fókusz összevissza ugrál --><input tabindex="3" name="vezeteknev"><input tabindex="1" name="keresztnev"><input tabindex="2" name="email">
<!-- utána: a forrás sorrendje adja a Tab-sorrendet --><input name="keresztnev"><input name="vezeteknev"><input name="email">WordPress
Szekció neve “WordPress”A pozitív tabindex általában a téma sablonjából, egy oldalszerkesztő beállításából vagy egy bővítmény kódjából jön. Keresd meg a forrásban (az oldal forrásában keress rá a tabindex=" szövegre), és ahol a bővítmény vagy a téma írja ki, ott a beállításokban vagy a sablonban töröld, illetve vedd fel a kapcsolatot a bővítmény fejlesztőjével. Gyermektémában módosítsd, hogy a téma frissítése ne írja felül.
Hogyan ellenőrizd
Szekció neve “Hogyan ellenőrizd”-
Az oldal Konzoljában (F12) listázd a pozitív értékű elemeket:
Konzol [...document.querySelectorAll('[tabindex]')].filter((e) => e.tabIndex > 0)Az eredmény legyen üres lista.
-
Egér nélkül, csak a Tab billentyűvel járd végig az oldalt: a fókusznak a képernyőn felülről lefelé, balról jobbra kell haladnia.
-
A riportban futtasd újra a mérést.
Készült: