Rating
Per esprimere una valutazione su un contenuto.
Esempio
Il Rating è composto da un <fieldset>
con classe .rating
contenente 5 <input type="radio">
con valori da 1 a 5.
Le <label>
contengono le icone delle stelle e la descrizione per Screen Reader.
Rating
Valuta 5 stelle su 5
Valuta 4 stelle su 5
Valuta 3 stelle su 5
Valuta 2 stelle su 5
Valuta 1 stelle su 5
<fieldset class= "rating" >
<legend> Rating</legend>
<input type= "radio" id= "star5a" name= "ratingA" value= "5" />
<label class = "full" for= "star5a" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 5 stelle su 5</span>
</label>
<input type= "radio" id= "star4a" name= "ratingA" value= "4" />
<label class = "full" for= "star4a" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 4 stelle su 5</span>
</label>
<input type= "radio" id= "star3a" name= "ratingA" value= "3" />
<label class = "full" for= "star3a" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 3 stelle su 5</span>
</label>
<input type= "radio" id= "star2a" name= "ratingA" value= "2" />
<label class = "full" for= "star2a" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 2 stelle su 5</span>
</label>
<input type= "radio" id= "star1a" name= "ratingA" value= "1" />
<label class = "full" for= "star1a" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 1 stelle su 5</span>
</label>
</fieldset>
Con Label
Per visualizzare una label descrittiva aggiungere la classe .rating-label
al <fieldset>
e un tag <legend>
all’inizio dello stesso.
Accessibilità
Il tag <legend>
contiene testo aggiuntivo per Screen Reader all’interno di uno <span class="visually-hidden">
.
La label con il numero di stelle dev’essere contenuta in uno <span>
semplice.
Valutazione 4 stelle su 5
Valuta 5 stelle su 5
Valuta 4 stelle su 5
Valuta 3 stelle su 5
Valuta 2 stelle su 5
Valuta 1 stelle su 5
<fieldset class= "rating rating-label" >
<legend><span class= "visually-hidden" > Valutazione</span> <span> 4 stelle</span> <span class= "visually-hidden" > su 5</span></legend>
<input type= "radio" id= "star5b" name= "ratingB" value= "5" />
<label class = "full" for= "star5b" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 5 stelle su 5</span>
</label>
<input type= "radio" id= "star4b" name= "ratingB" value= "4" checked />
<label class = "full" for= "star4b" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 4 stelle su 5</span>
</label>
<input type= "radio" id= "star3b" name= "ratingB" value= "3" />
<label class = "full" for= "star3b" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 3 stelle su 5</span>
</label>
<input type= "radio" id= "star2b" name= "ratingB" value= "2" />
<label class = "full" for= "star2b" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 2 stelle su 5</span>
</label>
<input type= "radio" id= "star1b" name= "ratingB" value= "1" />
<label class = "full" for= "star1b" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 1 stelle su 5</span>
</label>
</fieldset>
Sola lettura
Aggiungendo la classe .rating-read-only
al <fieldset>
si ottiene un Rating non modificabile di sola lettura.
Si consiglia di utilizzare l’attributo disabled
sugli input radio.
Accessibilità versione sola lettura
Per rendere accessibile il contenuto è necessario aggiungere un tag <legend>
con classe .visually-hidden
e nascondere gli input radio utilizzando aria-hidden="true"
.
Valutazione 4 stelle su 5
Valuta 5 stelle su 5
Valuta 4 stelle su 5
Valuta 3 stelle su 5
Valuta 2 stelle su 5
Valuta 1 stelle su 5
<fieldset class= "rating rating-read-only" >
<legend class= "visually-hidden" > Valutazione 4 stelle su 5</legend>
<input type= "radio" id= "star5c" name= "ratingC" value= "5" aria-hidden= "true" disabled />
<label class = "full" for= "star5c" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 5 stelle su 5</span>
</label>
<input type= "radio" id= "star4c" name= "ratingC" value= "4" checked aria-hidden= "true" disabled />
<label class = "full" for= "star4c" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 4 stelle su 5</span>
</label>
<input type= "radio" id= "star3c" name= "ratingC" value= "3" aria-hidden= "true" disabled />
<label class = "full" for= "star3c" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 3 stelle su 5</span>
</label>
<input type= "radio" id= "star2c" name= "ratingC" value= "2" aria-hidden= "true" disabled />
<label class = "full" for= "star2c" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 2 stelle su 5</span>
</label>
<input type= "radio" id= "star1c" name= "ratingC" value= "1" aria-hidden= "true" disabled />
<label class = "full" for= "star1c" >
<svg class= "icon icon-sm" ><use href= "/dist/svg/sprites.svg#it-star-full" ></use></svg>
<span class= "visually-hidden" > Valuta 1 stelle su 5</span>
</label>
</fieldset>