Vai al contenuto
Indietro

5 min di lettura

L'RTL non è una proprietà CSS

Impostare dir="rtl" ribalta il layout. Non rende il prodotto usabile in persiano. Il vero lavoro sta nello spazio tra queste due cose.

  • i18n
  • css
  • accessibility

Ho portato tre prodotti su mercati di lingua persiana. Ognuno mi ha insegnato qualcosa che la documentazione non diceva.

Le proprietà logiche sono la metà facile

Sostituire margin-left con margin-inline-start costa un pomeriggio e risolve forse il sessanta percento del problema. Fallo per primo e fallo ovunque, anche dove sei certo che sia simmetrico.

I numeri non si ribaltano

Un numero di telefono, una versione, uno snippet di codice, una durata: restano da sinistra a destra dentro testo RTL. Se lasci indovinare l'algoritmo bidi, prima o poi sbaglierà, di solito in uno screenshot che ti manda un cliente.

Le icone hanno una direzione

Una freccia che significa "avanti" va specchiata. Un pulsante play no. Una spunta no. Non esiste una regola che copra entrambi i casi: bisogna passarli a mano una volta e poi codificare la risposta.

I font non sono intercambiabili

La maggior parte dei caratteri latini non ha alcuna copertura del persiano, e quelli che dicono di averla spesso sbagliano il comportamento di legatura. Scegli un font pensato per la scrittura e imposta un'interlinea leggermente più ampia.