Funzionalità web:
font-size
rem
em unit
line-height
overflow-wrap
text-wrap
text-wrap: balance
text-wrap: pretty
min(), max() e clamp()
Unità viewport
Best practice generali
- Utilizza numeri senza unità per
line-height(ad es.1.5) per garantire il ridimensionamento relativo durante l'ereditarietà delle dimensioni dei caratteri. - Utilizza
overflow-wrap: break-word(oanywhere) per contenere URL lunghi. - NON utilizzare
pxper le dimensioni del carattere. Preferisciremper rispettare le preferenze relative alle dimensioni dei caratteri del browser dell'utente (dimensioni dei caratteri principali) oem/percentuali per il dimensionamento contestuale.
Leggibilità
- Evita righe di testo lunghe: limita i blocchi di paragrafi a una larghezza massima di 80 caratteri.
- Evita i fiumi di spazi vuoti: evita
text-align: justifyperché può rendere il testo più difficile da leggere. Se devi utilizzarlo, combinalo conhyphens: autoper evitare spazi vuoti eccessivi tra le parole. - Non utilizzare caratteri decorati: evita i caratteri tipografici in corsivo per i contenuti di lettura principali.
- Non fare affidamento sulle lettere maiuscole per dare enfasi: preferisci il grassetto per l'enfasi visiva e utilizza
<em>/<strong>quando l'enfasi è semantica. - Limita l'enfasi in generale: l'enfasi perde significato quando è ovunque. Applicala solo dove cambia il modo in cui i contenuti devono essere letti.
- Supporta le preferenze di zoom degli utenti: consenti agli utenti di ridimensionare il testo fino al 200% senza perdita di contenuti o funzionalità.
body {
line-height: 1.5;
text-align: start; /* Supports LTR and RTL */
}
article {
max-width: 80ch; /* Caps line length to ~80 characters for readability */
}
Testo a capo
- Utilizza
text-wrap: balanceper titoli bilanciati e contenuti simili a titoli (ad es.<th>) - Utilizza
text-wrap: prettyper il corpo del testo in formato lungo (paragrafi, citazioni ecc.) - Utilizza
text-wrap: balanceotext-wrap: prettyin modo deliberato, NON applicarlo su*perché comporta un costo in termini di prestazioni. - Evita
text-wrap: balancesugli elementi con una casella visibile (sfondi, bordi, ombre e così via) perché non modifica la larghezza del contenitore, ma influisce solo sul modo in cui il testo va a capo all'interno di quella larghezza. Questo può lasciare uno spazio vuoto alla fine del container, il che di solito non è auspicabile.
Tipografia adattabile
- SÌ: combina unità relative all'area visibile e relative ai caratteri in
clamp()per dimensioni dei caratteri che si adattano alle dimensioni dell'area visibile, assicurandoti al contempo che rimangano entro un intervallo desiderato. Ad esempio:clamp(2rem, 1rem + 5vw, 4rem). Regola la proporzione delle unità relative alla visualizzazione e al carattere per controllare la velocità con cui cambia la dimensione del carattere. - NON utilizzare
vwda solo per font-size senzaclamp(), in quanto può ridimensionare il testo in modo che sia troppo piccolo o troppo grande su schermi estremi.