Neidio i'r cynnwys
SilktideCymorth

Rôl rhiant ARIA ar goll

Mae Silktide yn gwirio elfennau y mae eu rôl ARIA ond yn gwneud synnwyr o fewn math penodol o gynhwysydd, megis tab y mae'n rhaid iddo fod o fewn stribed tabiau, ac yn gwirio bod y cynhwysydd gofynnol yn bresennol.

<!-- Problem: tab heb tablist o'i gwmpas -->
<button role="tab">Trosolwg</button>

<!-- Datrysiad: amgáu'r tabiau yn eu cynhwysydd gofynnol -->
<div role="tablist">
  <button role="tab">Trosolwg</button>
</div>

Pam mae hyn yn bwysig

Diffinnir rolau eitemau yn gan eu cyd-destun: mae tab yn drydydd o bum tab, mae option yn un dewis mewn rhestr, ac mae row yn rhan o dabl. Mae yn deillio'r safle, y cyfrif a'r ymddygiad llywio o'r teclyn rhiant. Hebddo, gall yr eitem gael ei chamadnabod, ei chyhoeddi heb unrhyw gyd-destun, neu ei hepgor yn gyfan gwbl - mae'r awdur wedi ychwanegu hanner teclyn, ac nid yw defnyddwyr yn cael y naill hanner na'r llall yn ddibynadwy.

Sut i'w drwsio

  1. Amgáwch yr elfen mewn cynhwysydd â'r rôl ofynnol - er enghraifft, rhowch elfennau role="tab" y tu mewn i role="tablist".
  2. Os na all y rhiant amgáu'r plant yn gorfforol yn y cod, ychwanegwch aria-owns ar y rhiant rhesymegol i'w mabwysiadu.
  3. Os nad yw'r elfen yn eitem o'r math hwnnw mewn gwirionedd, tynnwch neu gywirwch ei rôl.

Parau cyffredin: mae tab angen tablist; mae option angen listbox; mae menuitem angen menu neu menubar; mae radio mewn grŵp ARIA angen radiogroup; mae treeitem angen tree; mae row angen grid, table, treegrid, neu rowgroup; mae celloedd a phenawdau angen row.

Sut mae Silktide yn profi hyn

  1. Dewch o hyd i bob elfen y mae ei rôl ARIA yn gofyn am rôl rhiant benodol, gan hepgor unrhyw beth mewn rhanbarth sydd wedi'i farcio â data-silktide="ignore" ac unrhyw beth y mae gwaharddiad gwiriad a osodwyd ar gyfer eich gwefan yn cyfateb iddo.
  2. Ewch i fyny drwy ei hynafiaid, gan ddilyn hefyd unrhyw fabwysiadu aria-owns, i chwilio am elfen â rôl rhiant ofynnol.
  3. Adroddwch am elfennau lle na cheir hyd i hynafiad o'r fath.

Datrys problemau

Mae'r rôl rhiant ar elfen â rôl ymhlyg

Mae elfennau brodorol yn cyfrif: nid oes angen rolau penodol ar <option> y tu mewn i <select>, neu <li> y tu mewn i <ul>, <ol> neu <menu>, oherwydd bod y ddwy elfen yn cario'r rolau cywir yn ymhlyg. Mae canfyddiadau'n ymddangos pan ddefnyddir rôl eitem heb unrhyw riant cymwys, penodol neu ymhlyg.

Mae'r elfen mewn cod trydydd parti na allwch ei newid

Mae rhai teclynnau, megis map wedi'i fewnosod, yn llunio marcio na allwch ei olygu. Ychwanegwch data-silktide="ignore" at yr elfen sy'n cynnwys y teclyn, a bydd y gwiriad hwn yn hepgor popeth y tu mewn iddi yn y prawf nesaf.

Dysgu rhagor

Diweddarwyd ddiwethaf

A oedd y dudalen hon yn ddefnyddiol?