group
Merkitsee liittyvien elementtien yleisen ryhmittelyn. Semanttisesti kevyempi kuin maamerkki — ruudunlukuohjelmat eivät mainosta ryhmiä maamerkki-valikossa. Käytetään <fieldset>+<legend> ryhmiteltyihin lomakeohjauselementteihin; turvaudu role="group"-rooliin muille kuin lomakeryhmittelyille.
Käyttötilanteet
Ryhmitellyille lomakeohjauselementeille käytetään <fieldset>-elementtiä <legend>-elementin kanssa. Natiivi antaa ryhmäsemantiikan, visuaalisen reunuksen (muotoiltavissa haluamallaan tavalla) ja legend-yhdistämisen.
role="group" on oikea työkalu, kun:
- Ympäröidään joukko liittyviä mutta ei-lomakenohjauselementtejä (päivämäärävalitsimen kolme yhdistelmälaatikkoa, rivissä olevat kuvakevaihtopainikkeet).
- Merkitään aliosa puun, puunäkymän tai ruudukon sisällä, jossa kunkin tason lapset muodostavat loogisen ryhmän.
- Halutaan ryhmittely, jota EI esitetä maamerkkinä — erona katso
role="region".
Ryhmällä TULISI olla saavutettava nimi (aria-label tai aria-labelledby), kun sen tarkoitus ei käy ilmi asiayhteydestä. Ilman nimeä ryhmä on ruudunlukuohjelmille näkymätön eikä rooli lisää arvoa.
Yleisimmät virheet
role="group"ilman saavutettavaa nimeä. Ruudunlukuohjelmat ohittavat roolin; ryhmä on näkymätön.role="group"käyttäminen siellä, missä<fieldset>+<legend>toimisi. Natiivi on suositeltavampaa.role="group"jarole="region"sekoittaminen. Region on maamerkki ja näkyy maamerkkinavigoinnissa; group ei.- Jokaisen käyttöliittymäosan merkitseminen ryhmäksi. Käytetään säästeliäästi — liian monet ryhmittelyt laimentavat jokaisen arvon.
role="group"role="tablist"-elementin ympärille. Tarpeeton; tablist on jo ryhmittelykonstrukti.
Esimerkki
<!-- Suositeltava lomakeohjauselementeille -->
<fieldset>
<legend>Syntymäaika</legend>
<label>Päivä <input type="text" inputmode="numeric"></label>
<label>Kuukausi <input type="text" inputmode="numeric"></label>
<label>Vuosi <input type="text" inputmode="numeric"></label>
</fieldset>
<!-- Ei-lomakeryhmittely -->
<div role="group" aria-labelledby="ratingLabel">
<span id="ratingLabel">Arvioi tämä artikkeli</span>
<button type="button" aria-label="1 tähti">★</button>
<button type="button" aria-label="2 tähteä">★★</button>
</div>